详细问题描述
app端使用 uni.request 以POST方式提交数据:
data对象里有两个参数:参数1jobId,参数2 assets 为base64字符串,参数2的数据量很大,可能会有3M以上。
同样的请求数据,多次请求之后会发生Request Body里数据丢失的情况,经后台调试可发现,正常情况下Rquest Body里是一个完整的JSON对象,数据丢失后Rquest Body里非完整JSON对象,导致后台序列化报错。
另外一个现象是:请求发生数据丢失时,header里的content-length与请求正常时的长度一样。
[内容]
uni.request({
url: 'https://172.18.40.227:8080/xxxx/xxxx/uploadJobInfo',
method: 'POST',
data: {
jobId: jobInfo.ID,
assets: encodeAssetData
},
success: (res) => {
console.log(res.data);
this.text = 'request success';
},
fail: (e)=>{
console.log(e);
console.log('同步工单失败!')
}
});
重现步骤
[步骤]
app端使用uni.request API,已POST方式多次发送同一个请求,content-type为默认的"application/json",请求体 data 对象里有较大数据量的BASE64字符串参数
[结果]
多次请求后,request body 里会发生数据丢失的现象
[期望]
不管几次请求,request body里JSON对象的数据不发生丢失。
[如果语言难以表述清晰,拍一个视频或截图,有图有真相]
IDE运行环境说明
[HBuilder 或 HBuilderX。如果你用其他工具开发uni-app,也需要在此说明]
HBuilderX
[IDE版本号]
2.6.16.20200424
[mac版本号]
0.11.6 (15G22010)
uni-app运行环境说明
[运行端是h5或app或某个小程序?]
app
[运行端版本号]
[项目是cli创建的还是HBuilderX创建的?如果是cli创建的,请更新到最新版cli再试]
HBuilderX创建
[编译模式说明:自定义组件模式?纯nvue模式?v3模式?]
v3模式
App运行环境说明
[Android版本号]
7.1.1
[手机型号]
NX653J
[模拟器型号]
附件
[IDE问题请提供HBuilderX运行日志。菜单帮助-查看运行日志,点右键打开文件所在目录,将log文件压缩成zip包上传]
[App问题请提供可重现问题的代码片段,你补充的细一点,问题就解决的快一点]
[App安装包或H5地址]
[可重现代码片段]
联系方式
[QQ] 413530028