b***@qq.com
b***@qq.com
  • 发布:2020-07-27 17:27
  • 更新:2020-08-28 09:52
  • 阅读:1704

【报Bug】atob方法解码base64导致数据丢失

分类:uni-app

产品分类: uniapp/App

PC开发环境操作系统: Windows

PC开发环境操作系统版本号: win7

HBuilderX类型: 正式

HBuilderX版本号: 2.8.2

手机系统: Android

手机系统版本号: Android 10

手机厂商: realme

手机机型: Realme

页面类型: vue

打包方式: 云端

项目创建方式: HBuilderX

示例代码:
复制代码let cs = atob('QQ5yFwNRVlxUBxJQVBUEIBNWVggAAgJGBwEVUHRHVAJaElFBVgsVAXBGBwFTERJQVBUFIhNWVl1RRlBGBwEVUXZHVAISUwRBU30=');  
console.log(cs.length)  

操作步骤:

将示例代码分别在2.7.5和2.8.2中执行,查看字符串长度即可。

预期结果:

在2.8.2使用atob后,字符串长度应为74

实际结果:

在2.8.2使用atob后,字符串长度实际为20

bug描述:

我有一个加密字符串QQ5yFwNRVlxUBxJQVBUEIBNWVggAAgJGBwEVUHRHVAJaElFBVgsVAXBGBwFTERJQVBUFIhNWVl1RRlBGBwEVUXZHVAISUwRBU30=
在2.7.5版本使用atob方法解码后字符串长度为74,但是2.8.2版本使用atob方法解码后字符串长度为20,导致无法正常解析。查看更新文档后也未找到相关改动。
使用其他base64解码方法也会出此错误。

2020-07-27 17:27 负责人:DCloud_Android_ST 分享
已邀请:
DCloud_Android_ST

DCloud_Android_ST

应该是v8引擎的问题。临时解决方案云打包切换到JSC引擎 具体参考 https://ask.dcloud.net.cn/article/37465

r***@21cn.com

r***@21cn.com

好像2.8.3也有这问题,返回长度只有1

8***@qq.com

8***@qq.com

现在这个问题还没有解决,请问什么时候能解决一下呀

x***@qq.com

x***@qq.com - 90 IT菜鸟前端

怎么2.8.8.20几也有这个问题呢,我登录信息是要解析的,打包h5可以正常解析,APP就不可以,同一份代码,服务器一样

  • lihailan

    解决了不,这个问题,都这么久了还没解决

    2020-11-26 16:05

该问题目前已经被锁定, 无法添加新回复

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

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

## 大标题 
### 小标题

斜体 / 粗体 :

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

代码片段 :

``` 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

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

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