Body-Parser太大Nodejs
我目前正在开发一个应该接收一个图像的base64的API,但是当我尝试通过POST传递这个有效负载并发送时,服务器(通过使用expression式和身体分析器作为中间件,由Node构成)给出我有以下错误:
request entity too large
在网上search了很多之后,我发现有人说我应该使用:
bodyParser = require('body-parser'); app.use(bodyParser.urlencoded({limit: '50mb', extended: true})); app.use(bodyParser.json({limit: '50mb'}));
intead使用:
app.use(bodyParser.urlencoded({ extended: false })); app.use(bodyParser.json());
但是,通过这样做,我收到此错误:
Unexpected token i in JSON at position 5
有没有人知道我在这里失踪? 提前致谢!
这是一个打印与我试图发送的对象为例:
谢谢大家帮助我解决这个问题! 对于那些正在面对或将面临这个问题的人,我可以通过将一个对象传递给bodyParser.urlencoded方法和BodyParser.json方法来解决这个问题。
由于他们接受方法中的对象,所以我们可以通过限制和请求的大小,所以我configuration我这样做:
var bodyParser = require('body-parser'); app.use(bodyParser.urlencoded({ limit: '5mb', parameterLimit: 100000, extended: false })); app.use(bodyParser.json({ limit: '5mb' }));
这里有这个话题可以帮助:
问题堆栈
还有BodyParser本身的文档,您可以通过单击有关BodyParser的文档来访问它
尝试交换bodyParser.json和bodyParser.urlencoded 。
var bodyParser = require('body-parser'); app.use(bodyParser.json({limit: '50mb'})); app.use(bodyParser.urlencoded({limit: '50mb', extended: true}))