4

我正在尝试将大量数据发布到我的 Sails API 中,但出现 413 错误:

Unable to parse HTTP body- error occurred - Error: request entity too large

我已经尝试了很多在不同讨论中建议的解决方案,但它从来没有用过,而且似乎适用于以前的风帆版本。(它总是关于改变 bodyParser 选项)

有人知道sails 0.10.5 的正确语法吗?非常感谢!

4

2 回答 2

4

有人知道sails 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);
  }
}
于 2015-04-08T13:31:44.703 回答
3

您可能还想添加该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);
   })()
}
于 2016-12-08T03:17:04.807 回答