url 不被转义 php,上文 说了 签名时 不进行URL 转义。下文问题排查就说需要encodeURIComponent,6...

1.url问题,感觉是需要解码

上文:对string1作sha1加密,字段名和字段值都采用原始值,不进行URL 转义。

附录5-常见错误及解决方法

下文:确保你获取用来签名的url是动态获取的,动态页面可参见实例代码中php的实现方式。如果是html的静态页面在前端通过ajax将url传到后台签名,前端需要用js获取当前页面除去'#'hash部分的链接(可用location.href.split('#')[0]获取,而且需要encodeURIComponent),因为页面一旦分享,微信客户端会在你的链接末尾加入其它参数,如果不是动态获取当前链接,将导致分享后的页面签名失败。

本来就是前后矛盾了,问题排查时,就是按照 常见错误这款文档排查的,后面给你个错误的排查方法,这样更加坑人,

2.时间戳问题

加签时需要字符串拼接,无可厚非,但是config 配置时,示例页面https://mp.weixin.qq.com/debug/cgi-bin/sandbox?t=jsapisign 用的是Number类型的,并没有说清楚,增加调试难度,虽然最后验证了类型并不影响实际结果,但是增多了一个维度去debugger,希望说明清楚

文档 是这样描述的确认config中nonceStr(js中驼峰标准大写S), timestamp与用以签名中的对应noncestr, timestamp一致。但是示例代码noncestr 是驼峰命名的,还有增加说明依赖包版本,默认都到3.多了,实际上1.几的版本才适用

希望完善文档,流血者一个就好了,莫让后来者举步维艰

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值