当前位置: 代码迷 >> 综合 >> 微信公众号 scanQRCode:fail, the permission value is offline verifying
  详细解决方案

微信公众号 scanQRCode:fail, the permission value is offline verifying

热度:4   发布时间:2024-01-03 21:48:13.0

1、公众号后台白名单

查看公众号后台配置有没有设置正确的安全域名和白名单等

 

2、确认config正确通过

3、如果是在页面加载好时就调用了JSAPI,则必须写在wx.ready的回调中

4、查看jsApiList是否添加了相应JSAPI

router.beforeEach((to, from, next) => {// 获取权限验证配置(签名) 后端返回 getConfig, 注意返回字段的大小写!let res// 注入配置信息wx.config({debug: false, // 调试开关appId: res.appId, // 必填,公众号的唯一标识timestamp:res.timestamp , // 必填,生成签名的时间戳nonceStr: res.nonceStr, // 必填,生成签名的随机串signature: res.signature,// 必填,签名jsApiList: ["scanQRCode","updateAppMessageShareData","updateTimelineShareData"] // 必填,需要使用的JS接口列表});wx.ready(() => {// doSoming});
})

5、url问题

push的跳转不能被写入ios微信浏览器的地址栏

处理:push跳转改为window.loaction.href跳转 才能改变地址栏的变化,才能签名成功

其次确认url是页面完整的url(请在当前页面alert(location.href.split('#')[0])确认),包括'http(s)/'部分,以及'?'后面的GET参数部分,但不包括'#'hash后面的部分

即获取url完成地址的方法为


let url = window.location.href.split('#')[0];

如果链接带有中文字符或者特殊符号,前端需要使用encodeURIComponent编码,同时后端需要配合解码


let url = encodeURIComponent(window.location.href.split('#')[0]);

6、微信开发者工具缺失相关API权限能力

 // 在开发者工具地址栏访问以下地址:https://www.weixinsxy.com/jssdk/// 查看权限是否开启成功// 然后再访问本地的开发地址进行测试

官方文档描述: 概述 | 微信开放文档

  相关解决方案