前端从H5调起微信扫码兼容问题、安卓可以调起,但是在IOS系统config方法报invalid signature签名错误的问题

问题的主要原因就是IOS浏览器url进行了一个反编译

在这里插入图片描述
这个都是本人亲测,上线的功能。
ios这里会有这个问题

如何解决ios的url编码问题呢?

最简单直接的就是判断他是什么环境,因为只有在H5调起扫码的适合才会有兼容的问题重点
1.需要判断是不是h5打开的项目(我这里做的是app和小程序、h5兼容的)所以需要判断
在这里插入图片描述

2.直接使用location.href = url地址(这样的路径就解决ios兼容问题了)
在这里插入图片描述
3.如果不是h5就正常跳转就好了(我这里使用的是Taro所以是Taro.)
在这里插入图片描述

为什么会引起这个问题呢?

就是因为这个navigateTo这个方法会导致,url进行重新编码,而咱们获取的是转码过后的url,因为调用小程序的api是需要小程序那边他会检索是否能找到这个页面,如果有的话就正常返回,如果没有的话签名就会有问题,直接location.href =他相当于直接替换原先的url,navigateTo就不会对url进行编码,所以就可以获取到未被编译的url参数了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值