mirror of
https://github.com/strapi/strapi.git
synced 2025-11-18 19:22:05 +00:00
sign file urls when uploading files
This commit is contained in:
parent
22ab52aa4e
commit
1e1b62ef23
@ -2,6 +2,7 @@
|
|||||||
|
|
||||||
const _ = require('lodash');
|
const _ = require('lodash');
|
||||||
const { ApplicationError } = require('@strapi/utils').errors;
|
const { ApplicationError } = require('@strapi/utils').errors;
|
||||||
|
const { mapAsync } = require('@strapi/utils');
|
||||||
const { getService } = require('../utils');
|
const { getService } = require('../utils');
|
||||||
const { ACTIONS, FILE_MODEL_UID } = require('../constants');
|
const { ACTIONS, FILE_MODEL_UID } = require('../constants');
|
||||||
const validateUploadBody = require('./validation/admin/upload');
|
const validateUploadBody = require('./validation/admin/upload');
|
||||||
@ -49,12 +50,12 @@ module.exports = {
|
|||||||
}
|
}
|
||||||
|
|
||||||
const data = await validateUploadBody(body);
|
const data = await validateUploadBody(body);
|
||||||
const replacedFiles = await uploadService.replace(id, { data, file: files }, { user });
|
const replacedFile = await uploadService.replace(id, { data, file: files }, { user });
|
||||||
|
|
||||||
// Sign file urls for private providers
|
// Sign file urls for private providers
|
||||||
const signedFiles = await getService('file').signFileUrls(replacedFiles);
|
const signedFile = await getService('file').signFileUrls(replacedFile);
|
||||||
|
|
||||||
ctx.body = await pm.sanitizeOutput(signedFiles, { action: ACTIONS.read });
|
ctx.body = await pm.sanitizeOutput(signedFile, { action: ACTIONS.read });
|
||||||
},
|
},
|
||||||
|
|
||||||
async uploadFiles(ctx) {
|
async uploadFiles(ctx) {
|
||||||
@ -77,7 +78,10 @@ module.exports = {
|
|||||||
const data = await validateUploadBody(body);
|
const data = await validateUploadBody(body);
|
||||||
const uploadedFiles = await uploadService.upload({ data, files }, { user });
|
const uploadedFiles = await uploadService.upload({ data, files }, { user });
|
||||||
|
|
||||||
ctx.body = await pm.sanitizeOutput(uploadedFiles, { action: ACTIONS.read });
|
// Sign file urls for private providers
|
||||||
|
const signedFiles = await mapAsync(uploadedFiles, getService('file').signFileUrls);
|
||||||
|
|
||||||
|
ctx.body = await pm.sanitizeOutput(signedFiles, { action: ACTIONS.read });
|
||||||
},
|
},
|
||||||
|
|
||||||
async upload(ctx) {
|
async upload(ctx) {
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user