9***@qq.com
9***@qq.com
  • 发布:2020-05-08 15:41
  • 更新:2023-02-28 13:37
  • 阅读:1974

【报Bug】uni.request POST请求 requset body 数据丢失!!

分类:uni-app

详细问题描述

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

2020-05-08 15:41 负责人:无 分享
已邀请:
馬小气呀

馬小气呀 - 程序.Ma

你好,问题最后解决了吗

要回复问题请先登录注册