vue中使用微信 jssdk 包签名错误但签名验证通过了嗷

发布于 2022-09-11 22:21:22 字数 1787 浏览 44 评论 0

微信公众号 绑定连接 ,使用公众号中的 定位 不得不用 微信的 jssdk

然后 npm install weixin-js-sdk
再所需要的页面中 import wx from 'weixin-js-sdk'

然后 在

 created() {
    let url = window.location.host.split('#')[0]
    R.a.a({
      local: url
    }).then(resp =>{
      if(resp.ok){
        wx.config({
          debug: true, // 开启调试模式,调用的api的返回值 若要查看传入的参数,可以在pc端打开,参数自动Log出来
          appId: resp.data.appId, // 公众号的唯一标识
          timestamp: resp.data.timestamp, // 生成签名的时间戳
          nonceStr: resp.data.nonceStr, // 生成签名的随机串
          signature: resp.data.signature,// 签名
          jsApiList: ['getLocation'] // 必填,需要使用的 位置服务 JS接口列表,各项JS接口 参照 微信JSSDK文档附录1
        });
        wx.ready(function () {
          // 检测是否支持微信Js接口
          wx.checkJsApi({
            jsApiList: [
              'getLocation'
            ],
            success: function (res) {
              console.log('success',res);
              if (res.checkResult.getLocation == false) {
                this.$toast('你的微信版本太低,请升级到最新的微信版本!');
                return;
              }
            }
          });
          wx.getLocation({
            // 获取 当前位置信息(经纬度,如需转换实际地址,需引用第三方转换)
            success: function (res) {
              console.log('定位信息',res)
              var latitude = res.latitude; // 纬度,浮点数,范围为90 ~ -90
              var longitude = res.longitude; // 经度,浮点数,范围为180 ~ -180。
            },
            cancel: function (res) {
              Message("用户拒绝授权获取地理位置");
            }
          });
        })
        wx.error(function(res){
          console.log('error',res);
        });
      }
    })
  },

然后就报错
clipboard.png
但是 后端验证 签名 验证是对的 w
网上搜问题, 很多说解决了 但也不说是怎么解决的 好烦啊 (┬_┬) 有没有大神给解答解答哇

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

昔梦 2022-09-18 22:21:22

让后端给你jsapi_ticket和appid
自己上http://mp.weixin.qq.com/debug...
生成一个签名 然后放到代码里试试。
如果可以成功,那就是后台的问题了(十有八九就是后台签名不对)。

我之前也是这样,服务器死活说自己签名是对的,和校验工具里面的一样,但是到我这里就是签不成功。
我就找他要了jsapi_ticket自己去工具上生成签名,然后就通过了。
但是服务器还说自己签名没错。
最后是技术总监来看他代码,发现他代码有问题。
白白浪费我一个小时。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文