【发布时间】:2017-08-10 13:11:41
【问题描述】:
我目前正在开发一个 API,它应该接收图像的 base64,但是当我尝试将它传递到有效负载并通过 POST 发送时,服务器(顺便说一下,它是用 Node 制作的,使用 express 和 body-parser 作为中间件)给我以下错误:
request entity too large
在网上搜索了很多之后,我发现有人说我应该使用:
bodyParser = require('body-parser');
app.use(bodyParser.urlencoded({limit: '50mb', extended: true}));
app.use(bodyParser.json({limit: '50mb'}));
不要使用:
app.use(bodyParser.urlencoded({ extended: false }));
app.use(bodyParser.json());
但是,这样做,我收到此错误:
Unexpected token i in JSON at position 5
有人知道我在这里缺少什么吗?提前致谢!
这是我尝试发送的对象的打印示例:
【问题讨论】:
-
您是在正文中将图像作为原始文本发送,还是包装在 JSON 对象中?
-
@JoeClay,我作为 JavaScript 对象 (JSON) 发送,因为我在应用程序的前端使用 Angular 2
-
好的,这排除了您缺少
bodyParser中间件。您可以将请求的内容(或生成 JSON 对象的代码 sn-p)添加到问题中吗?您发送的 JSON 格式似乎不正确。 -
@JoeClay 当然,我在问题中放了一个对象作为示例
标签: node.js express base64 body-parser