我在请求中有一个 413 Request Entity Too Large,因为我发送了几个 URI Image base64 编码,这是很多字符。
无论如何,我找不到在 SailJS 中扩展此限制的方法。显然 Sails 将 Skipper 用于 bodyParser,但我在船长文档中找不到任何内容。
我猜它在http配置文件中......
如果有人可以告诉我如何:) 谢谢!
我在请求中有一个 413 Request Entity Too Large,因为我发送了几个 URI Image base64 编码,这是很多字符。
无论如何,我找不到在 SailJS 中扩展此限制的方法。显然 Sails 将 Skipper 用于 bodyParser,但我在船长文档中找不到任何内容。
我猜它在http配置文件中......
如果有人可以告诉我如何:) 谢谢!
AFAIK 当您创建处理上传的控制器时,它是可配置的,例如:
req.file('avatar').upload({
maxBytes : 2000000 // integer
}, function (err, uploadedFiles) {
if (err) return res.send(500, err);
return res.json({
message: uploadedFiles.length + ' file(s) uploaded successfully!',
files: uploadedFiles
});
});
但他们表示目前仍处于试验阶段。看看这个船长的文档。
这个解决方案对我们有用 https://github.com/balderdashy/sails/issues/2653
Sails 正在使用船长进行正文解析器。您可以通过在 config/http.js 中创建中间件来配置或更改默认的 skipper 配置:
configuredSkipperBodyParser: function () {
var opts = {limit:'50mb'};
var fn;
// Default to built-in bodyParser:
fn = require('skipper');
return fn(opts);
}
然后设置它而不是默认的正文解析器:
order: [
'startRequestTimer',
'cookieParser',
'session',
'myRequestLogger',
'configuredSkipperBodyParser',
'handleBodyParserError',
'compress',
'methodOverride',
'poweredBy',
'$custom',
'router',
'www',
'favicon',
'404',
'500'
]
希望这会有所帮助。