我目前在上传大于10mb的文件时遇到了一个问题。我正在将它们上传到s3存储桶中。
我尝试在使用bodyparser的中间件中构建的skipper中设置限制。
order: [
'cookieParser',
'session',
'myRequestLogger',
'bodyParser',
'compress',
'poweredBy',
'router',
'www',
'favicon',
],
myRequestLogger: function (req, res, next) {
sails.log("Requested :: ", req.method, req.url);
return next();
},
/***************************************************************************
* *
* The body parser that will handle incoming multipart HTTP requests. *
* *
* https://sailsjs.com/config/http#?customizing-the-body-parser *
* *
***************************************************************************/
bodyParser: (function _configureBodyParser() {
var skipper = require('skipper');
var middlewareFn = skipper({
strict: true,
limit: '50mb'
});
return middlewareFn;
})(),这似乎根本没有使用正在设置的limit属性。
任何关于这方面的建议都会有所帮助。
发布于 2019-04-16 16:59:30
我不完全确定你在哪里找到了Skipper的limit选项,但是限制上传的文件大小在skipper-s3 the skipper中有一定的记录。
在您的操作/控制器中接收上传时指定maxBytes选项应该是有效的。
如果你打算将文件上传到多个操作/控制器,那么我会将最大文件大小保留在像sails.config.custom.maxUploadFilesize这样的地方,这样就只有一个地方可以配置它--找不到任何全局Skipper选项,但我可能会错过它。
const MAX_UPLOAD_BYTES = 10 * 1024 * 1024;
req.file('avatar')
.upload({
// Required
adapter: require('skipper-s3'),
key: 'thekyehthethaeiaghadkthtekey',
secret: 'AB2g1939eaGAdesoccertournament',
bucket: 'my_stuff',
maxBytes: MAX_UPLOAD_BYTES
}, function whenDone(err, uploadedFiles) {
if (err) {
return res.serverError(err);
}
return res.ok({
files: uploadedFiles,
textParams: req.params.all()
});
});https://stackoverflow.com/questions/55702367
复制相似问题