调用小程序中H5页面的wx.reDirectTo时,url中含有中文,为什么要对url中的中文进行两次encode编码才有效,不然链接跳不过去
调用小程序中H5页面的wx.reDirectTo时,url中含有中文,为什么要对url中的中文进行两次encode编码才有效,不然链接跳不过去
27 回答13.8k 阅读
8 回答3.5k 阅读✓ 已解决
6 回答1.3k 阅读✓ 已解决
5 回答5.3k 阅读✓ 已解决
4 回答1.6k 阅读✓ 已解决
3 回答1.8k 阅读
4 回答2.3k 阅读✓ 已解决
这个主要是为了解析 URL 中的
%
这个符号吧,比如 encodeURIComponent('我') 会变为 "%E6%88%91",然后第二次解析的话,会将所有的 % 变为 %25,变为 "%25E6%2588%2591"至于这么做的意义,我猜哈,应该是为了兼容所有的编码规范吧,因为如果根据 "%25E6%2588%2591" 来 decode 都能将字符串还原为 "%E6%88%91",而如果直接还原 "%E6%88%91" 的话,不同编码规范还原的字符串不一致,会出现乱码现象。