diff --git a/packages/xpub-aws/README.md b/packages/xpub-aws/README.md index 6d26c03cbb55a18201d056408c30e8f8ab4dd644..412c05e11ee67846568434822082f344dec67c42 100644 --- a/packages/xpub-aws/README.md +++ b/packages/xpub-aws/README.md @@ -16,11 +16,11 @@ require('dotenv').config() ``` # `xpub-aws` API -A list of endpoints that help you upload, download and delete S3 files.\ +A list of endpoints that help you upload, download and delete S3 files. ## Upload a file [POST] #### Request -`POST /api/aws-upload` +`POST /api/aws` #### Request body ``` Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryWfPNVh4wuWBlyEyQ @@ -48,11 +48,11 @@ Content-Type: text/plain "size": 452097 } ``` ---- + ## Retrieve file signed URL [GET] This endpoint allows you to retrieve a file's signed URL that can be used to download the file. #### Request -`GET /api/aws-signed-url/{fragmentId}/{fileId}` +`GET /api/aws/{fragmentId}/{fileId}` | URI Parameter | Requiered | Requirements | Description | | -------- | -------- | -------- | -------- | @@ -66,10 +66,10 @@ HTTP/1.1 200 "signedUrl": "aws-url" } ``` ---- + ## Delete file [DELETE] #### Request -`DELETE /api/aws-delete/{fragmentId}/{fileId}` +`DELETE /api/aws/{fragmentId}/{fileId}` | URI Parameter | Requiered | Requirements | Description | | -------- | -------- | -------- | -------- | diff --git a/packages/xpub-aws/src/AWSBackend.js b/packages/xpub-aws/src/AWSBackend.js index 5c2dac23c361e127de6634e680f03938ffdc6a49..fe753bc83490dddd715f5b72f8f6ff73f75b3b5b 100644 --- a/packages/xpub-aws/src/AWSBackend.js +++ b/packages/xpub-aws/src/AWSBackend.js @@ -45,59 +45,46 @@ const AWSBackend = app => { return cb(null, true) }, }) - app.post( - '/api/aws-upload', - authBearer, - upload.single('file'), - async (req, res) => { - if (req.fileValidationError !== undefined) { - return res.status(400).json({ error: req.fileValidationError }) - } + app.post('/api/aws', authBearer, upload.single('file'), async (req, res) => { + if (req.fileValidationError !== undefined) { + return res.status(400).json({ error: req.fileValidationError }) + } - res.status(200).json({ - id: req.file.key, - name: req.file.originalname, - size: req.file.size, - }) - }, - ) - app.get( - '/api/aws-signed-url/:fragmentId/:fileId', - authBearer, - async (req, res) => { - const params = { - Bucket: process.env.AWS_BUCKET, - Key: `${req.params.fragmentId}${req.params.fileId}`, - } + res.status(200).json({ + id: req.file.key, + name: req.file.originalname, + size: req.file.size, + }) + }) + app.get('/api/aws/:fragmentId/:fileId', authBearer, async (req, res) => { + const params = { + Bucket: process.env.AWS_BUCKET, + Key: `${req.params.fragmentId}${req.params.fileId}`, + } - s3.getSignedUrl('getObject', params, (err, data) => { - if (err) { - res.status(err.statusCode).json({ error: err.message }) - return - } - res.status(200).json({ - signedUrl: data, - }) - }) - }, - ) - app.delete( - '/api/aws-delete/:fragmentId/:fileId', - authBearer, - async (req, res) => { - const params = { - Bucket: process.env.AWS_BUCKET, - Key: `${req.params.fragmentId}${req.params.fileId}`, + s3.getSignedUrl('getObject', params, (err, data) => { + if (err) { + res.status(err.statusCode).json({ error: err.message }) + return } - s3.deleteObject(params, (err, data) => { - if (err) { - res.status(err.statusCode).json({ error: err.message }) - return - } - res.status(204).json() + res.status(200).json({ + signedUrl: data, }) - }, - ) + }) + }) + app.delete('/api/aws/:fragmentId/:fileId', authBearer, async (req, res) => { + const params = { + Bucket: process.env.AWS_BUCKET, + Key: `${req.params.fragmentId}${req.params.fileId}`, + } + s3.deleteObject(params, (err, data) => { + if (err) { + res.status(err.statusCode).json({ error: err.message }) + return + } + res.status(204).json() + }) + }) } module.exports = AWSBackend