js-sdk微信分享在ios踩的坑

微信分享,预估开发时间五分钟…测试的是iphone8,分享设置完全无效。于是,进入调试模式,开发者工具一切正常,手机调试提示接口也完全ok,纳闷了…换安卓机测试,居然测试通过。想起ios的某些奇怪机制,难道是链接里带中文,好吧那就编码吧,下面说一下几种编码方式:

encodeURIComponent

它把URI字符串采用URF-8编码格式转化成escape格式的字符串。它会将更多的字符进行编码,比如"/"等字符。如果字符串里面包含了URI的几个部分不适合用这个来进行编码。否则“/”字符被编码后将URL显示错误。不会被此方法编码的字符:! * ( ),解码方法:decodeURIComponent()。

  1. 对查询字符串参数和它发现的任何非标准字符进行编码;
  2. 会使用对应的编码替换所有非字母数字字符。

encodeURI()

把URI字符串采用UTF-8编码格式转化成escape格式的字符串。不会被此方法编码的字符:! @ # $ & ( ) = : / ; ? + ',反向编码函数:decodeURI()。

  1. 对基础URL进行编码;
  2. 不会对本身属于URI的特殊字符进行编码,例如冒号、正斜杠、问号和井字号;
  3. 编码后的结果是除了空格之外的其他字符都原封不动,只有空格被替换成了%20。

经过编码后再测试ios,分享配置完全ok了,想起曾经ios设置cookie也碰到过无法使用中文的问题,浏览器设置携带中文需谨慎!!!

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值