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);
   })()
}
Другие вопросы по тегам