Javascript 我在尝试将expressbody解析器与koa body一起使用时发现了一个问题
我使用API网关体系结构,网关API在Express中编码,而我调用的微服务是用膝关节炎。 我正试图将多个用base64编码的文件发送到后端,在网关中没有正文解析器的情况下,我得到了一个Javascript 我在尝试将expressbody解析器与koa body一起使用时发现了一个问题,javascript,node.js,express,koa,body-parser,Javascript,Node.js,Express,Koa,Body Parser,我使用API网关体系结构,网关API在Express中编码,而我调用的微服务是用膝关节炎。 我正试图将多个用base64编码的文件发送到后端,在网关中没有正文解析器的情况下,我得到了一个负载太大的413错误,因此在添加它之后,我得到了这个错误:错误:MultipartParser.end():流意外结束:state=START\u BOUNDARY。 如果我拆下koa主体,则会再次出现错误有效载荷太大413。 我怀疑这个错误可能是由于对koa body使用了body解析器。 来自前端的请求通过a
负载太大的413
错误,因此在添加它之后,我得到了这个错误:错误:MultipartParser.end():流意外结束:state=START\u BOUNDARY
。
如果我拆下koa主体,则会再次出现错误有效载荷太大413
。
我怀疑这个错误可能是由于对koa body使用了body解析器。
来自前端的请求通过axios POST发送,值位于FormData中
这是microservice中的koa主体代码:
.use(
koaBody({
multipart: true,
formidable: {
maxFieldsSize: 50 * 1024 * 1024,
maxFileSize: 50 * 1024 * 1024
}
})
)
编辑:问题可能不清楚,但文件不是作为文件发送的,而是作为Base64字符串发送的。
EDIT2:经过一些研究,我发现问题甚至可能出现在网关API的代理中,我发现它在处理多部分表单()时存在一些问题。来自:
这不处理多部分实体,因为它们复杂且通常较大。对于多部分实体,您可能对以下模块感兴趣:
- 及
- 及
(他们的重点)很抱歉,我应该澄清更多,我将它们作为字符串发送文件,特别是base64字符串,这可能不算多部分正文,在阅读文档后,我确实使用了connect busboy,它总是给我带来负载过大的问题,即使在更改其限制后也是如此。