微信jssdk太坑了
出现invalid signature错误的情况真的很迷
- 文档最开始说不需要转义,后来我看到错误相关,说需要
encodeURIComponent(location.href.split('#')[0]) wx.config()中的nonceStr与后端进行签名时的noncestr不一样- 动态获取url这个地方描述的很迷,没明确说明是需要使用后端提供签名的接口还是,前端发起请求时的url
总之就是,要使用ajax签名,前端需要encodeURIComponent(location.href.split('#')[0])将当前url作为参数,传入后端签名接口,后端如果是php,需要urldecode($_GET['url']),再来获取jsapi_ticket进行签名,返回参数