微信公众号jssdk报错:the permission value is offline verifying,尤其关闭菜单,某些页面打开页面菜单功能,其他页面还要重新关闭。

先看看官方解释:

the permission value is offline verifying这个错误是因为config没有正确执行,或者是调用的JSAPI没有传入config的jsApiList参数中。建议按如下顺序检查:

1.确认config正确通过。

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

3.确认config的jsApiList参数包含了这个JSAPI。

翻译起来就是:

这个报错是因为wx.config没有配置成功,或者jsApiList参数配置有问题。

解决办法:

1.校验jssdk是否配置正常,(有成功配置的项即可)。

2.ios在vue或react打包项目配置失效,安卓正常。可改成兼容模式(见方法:getConfigUrl() )

import { GET } from '@/utils/request';
import wx from 'weixin-js-sdk';// 获取当前url配置jssdk
function getConfigUrl() {let u = window.navigator.userAgent;let isiOS = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/); //ios终端//安卓需要使用当前URL进行微信API注册(即当场调用location.href.split('#')[0])//iOS需要使用进入页面的初始URL进行注册,(即在任何pushstate发生前,调用location.href.split('#')[0])let url = '';if (isiOS) {url = (`${window.localStorage.getItem('_iosWXConfig_') || window.location.href.split('#')[0]}`);//获取初始化的url相关参数} else {url = (window.location.href.split('#')[0]);}return url;
}// 配置jssdk
async function setWXJSSDk() {const res = await GET('wechat/getSdkMessage', {url: getConfigUrl()});// 通过config接口注入权限验证配置wx.config({// debug: true, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。appId: res.appId, // 必填,公众号的唯一标识timestamp: res.timestamp, // 必填,生成签名的时间戳nonceStr: res.noncestr, // 必填,生成签名的随机串signature: res.signature,// 必填,签名// 必填,需要使用的JS接口列表jsApiList: ['checkJsApi','updateTimelineShareData','updateAppMessageShareData','onMenuShareTimeline','onMenuShareAppMessage','hideAllNonBaseMenuItem','showAllNonBaseMenuItem']});return;
}// 关闭所有菜单
async function wxHideMenu(item) {if (item.path === '/' || item.path === '/classroomreservation') return; //中转页-分享页面不调用await setWXJSSDk()wx.ready(() => {wx.hideAllNonBaseMenuItem();wx.checkJsApi({jsApiList: ['updateTimelineShareData','updateAppMessageShareData','onMenuShareTimeline','onMenuShareAppMessage','hideAllNonBaseMenuItem','showAllNonBaseMenuItem'], // 需要检测的JS接口列表,所有JS接口列表见附录2,success: function (res) {console.log(res);}})});
}// 打开微信菜单分享
async function wxMenuShare(wxShareSet) {// 通过ready接口处理成功验证await setWXJSSDk();wx.ready(() => {wx.updateTimelineShareData(wxShareSet);wx.updateAppMessageShareData(wxShareSet);wx.onMenuShareTimeline(wxShareSet);wx.onMenuShareAppMessage(wxShareSet);wx.showAllNonBaseMenuItem();});
}export {wxHideMenu,wxMenuShare,
}

3.检查jsApiList是否配置了“hideOptionMenu”、 “hideMenuItems”,若非必要可以改成:“hideAllNonBaseMenuItem”、“showAllNonBaseMenuItem”(经验来源实际项目踩坑,重复关闭开启有问题)

微信公众号jssdk:the permission value is offline verifying相关推荐

  1. 微信公众号js-sdk使用步骤总结

    微信公众号js-sdk使用步骤总结 1. 域名绑定 先登录微信公众平台进入"公众号设置"的"功能设置"里填写"JS接口安全域名". 可填写三 ...

  2. php企业微信号js-sdk,php微信公众号js-sdk开发应用

    这篇文章主要为大家详细介绍了php微信公众号js-sdk开发应用的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 测试js的接口功能,我用的是BAE服务器不是SAE服务器.SAE服务器不能 ...

  3. vue前端实现微信支付-微信公众号JSSDK

    最近在做支付功能,微信支付准备工作之类的请参考官方说明,注意个人申请的测试号不支持,要申请企业号,还要商户号,开通支付权限,配置域名,JSSDK的权限问题,尽可能都开通吧! 官方地址可参考这里:接入准 ...

  4. jssdk 获取微信收货地址_微信公众号JSSDK 获取经纬度

    a代码如下: //重点 引入这句 //测试 引用 function jsSdk() { var baseUrl = '***********'; $.ajax({ cache: false, url: ...

  5. 微信公众号JS-SDK多图上传爬坑指南

    一.wx.chooseImage爬坑 出现的问题: 安卓将chooseImage 方法返回的 localId 放在img标签的src属性下能够显示图片 IOS将chooseImage 方法返回的 lo ...

  6. weixin公众号页面返回上一层_微信公众号jssdk打开内置地图点击返回会回到之前页面,怎么退出页面...

    问题描述 在使用公众号jssdk过程中,用户需求点击公众号菜单微信内置地图打开指定地点. 暂用实现过程为 用户打开空白页面 空白页面wx.config wx.openLocation打开内置地图 问题 ...

  7. 微信公众号jssdk 分享/App原生应用接入分享开发及应用场景

    文章目录 前言 一.应用场景 二.Jssdk 接入准备工作 1.申请企业版微信公众号,并进行认证,并设置成为开发者 2.公众号配置 3.查看appid.设置密钥.并配置ip 白名单等 三.开发接入 1 ...

  8. Node Express微信公众号jssdk签名服务

    开发公众号的过程中,会使用jssdk提供的微信公众号原生功能,使用过程中微信需要确认使用者身份,所以使用前需要现通过config接口注入权限验证配置,这时就需要用到签名服务,根据微信官方要求 对于不会 ...

  9. 微信支付-chooseWXPay:fail, the permission value is offline verifying

    在微信开发工具调试微信支付功能,页面提示chooseWXPay:fail, the permission value is offline verifying,在真机测试就没问题了

  10. 微信公众号分享jssdk.php,微信公众号JSSDK

    官方 文件 ### 分享自定义 ~~~ {php echo register_jssdk();} wx.ready(function () { sharedata = { title: '微信JS-S ...

最新文章

  1. jquery-1.4.4.min.js无法解析json中result.data问题
  2. dom定位的三种元素
  3. java 版本SQLHelper
  4. LCD RGB 控制技术 时钟篇(下)
  5. 避免在循环体中声明创建对象
  6. 我们可以覆盖Java中的main()方法吗?
  7. 苏州大学计算机科学研究生,报录比最高专业TOP10!就离谱!
  8. python 折线图 尾部_Matplotlib 折线图plot()所有用法详解
  9. 添加防火墙策略_网络安全文章基础篇(第5张)防火墙项目实战笔记
  10. 机械工程专业英语复习
  11. Matlab Coder将m文件转换成C/C++
  12. “个人数据库操作可视化系统”设计思维导图
  13. Python编写端口扫描器
  14. Ubuntu生成so共享库的方法
  15. RL论文阅读【一】Playing Atari with Deep Reinforcement Learning
  16. Canvas学习参考文档
  17. 关于员工激励的思考-期望理论
  18. Goland嗖嗖的: 快捷键,自动生成代码等效率小技巧
  19. 硬盘分区备忘(主分区,扩展分区和逻辑分区)以及Linux硬盘分区工具parted 介绍...
  20. 涅槃重生,字节人力荐大型分布式手册,凤凰架构让你浴火成神

热门文章

  1. c1xx : warning C4199: C++/CLI、C++/CX 或 OpenMP 不支持两阶段名称查找;请使用 /Zc:twoPhase-
  2. 科学计算机上lg怎么打,科学计算器对数
  3. QPS,TPS,RT是什么?
  4. Windows PE安装 DiskGenius 备份/恢复系统
  5. Flutter 竖线 垂直分割线
  6. 毕业旅行之天府之国——徒步峨眉
  7. Cox模型中的时间依存协变量和时间依存系数(R语言)第一部分
  8. 如何xp计算机每天定时关机,WindowsXP电脑可以设置定时关机方法
  9. 微信电脑端突然发送不了文件了
  10. 计算机没有autoCAD_《AutoCAD三维设计环境》