我有一个在 AWS docker 容器上运行的 hapi 服务器,它公开了一个文件上传 API。这个 API 在我的本地机器上运行顺利,但是当部署到 AWS 时,它有时会失败,并出现错误“不完整的多部分有效负载”。错误并不总是发生,而只会在某些时候发生。我上传的图像尺寸很小(小于 100 kb),这个故障不是因为网络速度慢,因为我已经在多个网络上测试过它。
在调试 hapi 模块以进行有效负载解析后,我发现正在解析有效负载的 Pez 模块正在抛出此错误。我还注意到,当发生此错误时,调用 Pez 模块 onClose 事件并且没有发生任何解析事件,因此它返回“不完整的多部分有效负载”错误。发生这种情况时,Pez 状态处于“序言”,对于成功解析的情况,状态为“尾声”。
我的 hapi 路线配置是
config: {
payload: {
maxBytes: 20971520,
output: 'data',
parse: true,
allow: 'multipart/form-data'
}
}
有人可以建议为什么解析有时会失败,或者为什么在解析发生之前调用 onClose 事件?