出现invalid signature错误的情况真的很迷

  1. 文档最开始说不需要转义,后来我看到错误相关,说需要encodeURIComponent(location.href.split('#')[0])
  2. wx.config()中的nonceStr与后端进行签名时的noncestr不一样
  3. 动态获取url这个地方描述的很迷,没明确说明是需要使用后端提供签名的接口还是,前端发起请求时的url

总之就是,要使用ajax签名,前端需要encodeURIComponent(location.href.split('#')[0])将当前url作为参数,传入后端签名接口,后端如果是php,需要urldecode($_GET['url']),再来获取jsapi_ticket进行签名,返回参数

标签: 微信

添加新评论