2***@qq.com
2***@qq.com
  • 发布:2023-11-17 10:54
  • 更新:2023-11-17 14:27
  • 阅读:232

【报Bug】encodeURIComponent对url编码出现&符号时,开发环境与线上环境解码不一致

分类:uni-app

产品分类: uniapp/小程序/微信

PC开发环境操作系统: Windows

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

HBuilderX类型: 正式

HBuilderX版本号: 3.96

第三方开发者工具版本号: 1.06.2310071

基础库版本号: 3.0.2

项目创建方式: HBuilderX

操作步骤:
let href = `https://xxx.xxx.com/#/pages/index/index?memberId=${this.userInfo.userId}&type=miniProgram&token=${getToken()}`  
uni.navigateTo({  
                url: `/pages/webView/index?url=${encodeURIComponent(href)}`  
            });

webView/index.vue

onLoad(options) {  
        this.src = decodeURIComponent(options.url);  
        console.log(this.src);  
    },

改进后的代码也不行

this.src = decodeURIComponent(options.url).replace(/&/g, '&');

预期结果:

正常在小程序中打开网页

实际结果:

因为链接中多了& 网页链接打不开

bug描述:

encodeURIComponent对url编码出现"&"符号时,开发环境与线上环境解码不一致
开发环境会编译成%26,解码成“&”,线上环境会编译成& 解码成&
user.vue

let href = `https://xxx.xxx.com/#/pages/index/index?memberId=${this.userInfo.userId}&type=miniProgram&token=${getToken()}`  
uni.navigateTo({  
                url: `/pages/webView/index?url=${encodeURIComponent(href)}`  
            });

webView/index.vue

onLoad(options) {  
        this.src = decodeURIComponent(options.url);  
        console.log(this.src);  
    },

改进后的代码也不行

this.src = decodeURIComponent(options.url).replace(/&/g, '&');
2023-11-17 10:54 负责人:无 分享
已邀请:
2***@qq.com

2***@qq.com (作者)

线上环境&会编译成&解码成&

YUANRJ

YUANRJ

请向微信开发者社区反馈

要回复问题请先登录注册