Sails.js bodyParser - слишком большой объект запроса в версии 0.10.5
Я пытаюсь опубликовать много данных в моем API паруса, и я получаю эту ошибку 413:
Unable to parse HTTP body- error occurred - Error: request entity too large
Я перепробовал множество решений, предложенных в разных обсуждениях, но он никогда не работает и, похоже, подходит для предыдущей версии паруса. (это всегда об изменении параметров bodyParser)
Кто-нибудь знает правильный синтаксис для парусов 0.10.5? Большое спасибо!
2 ответа
Кто-нибудь знает правильный синтаксис для парусов 0.10.5? Большое спасибо!
Посмотрите на это разрешение (sails v.0.11.0, config/http.js):
module.exports.http = {
middleware: { ... },
bodyParser: function(){
var opts = {
limit:'10mb'
}
return require('./../node_modules/sails/node_modules/skipper')(opts);
}
}
Вы можете добавить parameterLimit
вариант тоже.
Вот что работает для меня. Использование sails.js 0.12
Каким-то образом библиотека байтов неправильно анализирует строку '10mb'. Ленивый, чтобы проверить регулярное выражение, поэтому я просто введите число напрямую.
Фрагменты кода:
middleware: {
order: [
'startRequestTimer',
'cookieParser',
'session',
'bodyParser',
'handleBodyParserError',
'compress',
'methodOverride',
'poweredBy',
'$custom',
'router',
'www',
'favicon',
'404',
'500'
],
bodyParser: (function () {
var opts = {limit:10000000, parameterLimit:10000};
var fn;
// Default to built-in bodyParser:
fn = require('skipper');
return fn(opts);
})()
}