1***@qq.com
1***@qq.com
  • 发布:2024-12-16 10:33
  • 更新:2024-12-16 10:33
  • 阅读:126

【报Bug】uni.uploadFile上传文件,在IOS APP端发送的请求地址被提前解码

分类:uni-app

产品分类: uniapp/App

PC开发环境操作系统: Windows

PC开发环境操作系统版本号: Microsoft Windows 10 家庭中文版10.0.19045 内部版本 19045

HBuilderX类型: 正式

HBuilderX版本号: 4.36

手机系统: iOS

手机系统版本号: iOS 17

手机厂商: 苹果

手机机型: iphone15

页面类型: vue

vue版本: vue2

打包方式: 云端

项目创建方式: HBuilderX

示例代码:

Android
{
"sessionId": "53c5f9f0b91511ef8c009b0ac015785f",
"_auth_org": "江西七叶莲科技有限公司",
"_auth_ts": "1734314440341",
"_auth_data": "aQoMO%2Fipvsef7zU3eLeEFOCDKXjTjHQgMtGMEkZcoo%2FDO8iXxtRTQknq8v%2F1NLqrIfEE3lMOpL8emkmQv7zdFQ%3D%3D",
"appCode": "fwimg"
}

IOS
{
"sessionId": "eb900df0b93011ef8c009b0ac015785f",
"_auth_org": "江西七叶莲科技有限公司",
"_auth_ts": "1734314637399",
"_auth_data": "5Yi74IQQV4LcXpFHk4ebI%2B9SFBf8ORuCCi5HQCWHglrwmLX%2F1WTsKV6nF2I%2BNUFcTEWWGEfkB%2FYOlAyLFhMvuw%3D%3D",
"appCode": "fwimg"
}

操作步骤:

1、IOS端使用uni.uploadFile上传文件,且URL上携带参数并含有特殊字符,比如+号 (_auth_data=5Yi74IQQV4LcXpFHk4ebI+9SFBf8ORuCCi5HQCWHglrwmLX/1WTsKV6nF2I+NUFcTEWWGEfkB/YOlAyLFhMvuw==)
发送之后,查看服务器端日志,或者抓包查看URL是否是编码状态

预期结果:

IOS端,uni.uploadFile上传文件 在服务器端日志没有被主动解码 输入的URL信息 仍然是URL编码的状态,即URL中的+号 还是对应的编码%2B

实际结果:

IOS端,uni.uploadFile上传文件,在服务器端日志显示,直接是解码状态,导致后端主动解码的时候将+号解析成了空格

bug描述:

【附件图片说明】图片是服务器上下载下来的日志,分别是android和ios的(图片上带有红色IOS标志的是IOS的日志)

【bug描述】IOS端使用uni.uploadFile上传文件,url上携带参数,例如: "sessionId=eb900df0b93011ef8c009b0ac015785f&_auth_org=江西七叶莲科技有限公司&_auth_ts=1734314637399&_auth_data=5Yi74IQQV4LcXpFHk4ebI+9SFBf8ORuCCi5HQCWHglrwmLX/1WTsKV6nF2I+NUFcTEWWGEfkB/YOlAyLFhMvuw==&appCode=fwimg" 这是URL原始状态。

我将URL进行url编码后,发送到服务端。但是校验失败。通过比对发现,IOS端将_auth_data里面的+号解析成了空格。

Android端上传文件正常,且服务器端日志显示URL是被编码的状态;再和IOS端比对,IOS端上传文件的URL在服务器的日志里面不是被编码的状态。说明URL在IOS端发出来前被提前解码。

2024-12-16 10:33 负责人:无 分享
已邀请:

要回复问题请先登录注册

  • 标题 / 粗斜体
  • 代码片段
  • 超链接 / 图片 / 视频
  • 列表 / 引用

文章内容较多时,可以用标题分段 :

## 大标题 
### 小标题

斜体 / 粗体 :

**粗体** 
*斜体*
***粗斜体***

代码片段 :

``` javascript
代码片段
```

超链接 :

[链接文字](链接地址) 例: [百度](http://www.baidu.com)

图片 :

![图片说明](图片地址) 例: ![百度logo](http://www.baidu.com/img/bdlogo.gif)

视频 :

!![视频说明](视频地址) 例: !![优酷视频](http://youku.com)

有序列表 :

1. 123
2. 123
3. 123

无序列表 :

- 123
- 123
- 123

引用 : ( 双回车后结束引用 )

> 引用内容
引用内容
引用内容