Node.js Express。身体大的身体

时间:2014-08-15 19:02:09

标签: node.js express


我使用Express.js ver 4.2并想要解析一个大帖子(150K - 1M),但收到错误消息“请求实体太大”。似乎限制是100 K.我现在不知道如何更改Express 4中的限制。在Express 3.x中,我刚刚做了 -

app.use(express.json({limit: '5mb'}));
app.use(express.urlencoded({limit: '5mb'}));

如何更改Express 4中的限制?

感谢您的帮助。

3 个答案:

答案 0 :(得分:75)

使用Express 4,您必须安装body-parser模块并改为使用它:

var bodyParser = require('body-parser');

// ...

app.use(bodyParser.json({limit: '5mb'}));
app.use(bodyParser.urlencoded({limit: '5mb'}));

答案 1 :(得分:10)

Mscdex的代码有效,但我们应该添加另一个参数以避免现在发出警告。

app.use(bodyParser.urlencoded({limit: '5mb', extended: true}));

答案 2 :(得分:0)

Express v4.x.x

Node.js v9.x.x

这取决于您是以JSON方式接收数据还是通过参数化URL查询。

发送大型JSON缓冲区时遇到同样的问题。该文件大约为43KB,我从中间件传入快速API。

我这样处理了:

app.use(bodyParser.json({limit: '5mb'}));
app.use(bodyParser.urlencoded({ extended: false }));

当身体是一个大的JSON对象时,这为我纠正了这个问题。