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

【报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

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