微信公众号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. MySQL 语句外键 连接
  2. Aizu 2224 Save your cats
  3. 对jQuery的认识
  4. 亲戚(信息学奥赛一本通-T1346)
  5. web服务器 apache_如何配置Apache Web服务器
  6. python 连接sql server
  7. 【译】x86程序员手册13-第5章 内存管理
  8. shell 运行shell脚本
  9. IDEA设置护眼浅绿色背景
  10. STM32F103实现CMSIS-DAP
  11. 【安全牛苑房弘】Kali Linux 环境熟悉
  12. 工作感受月记 201906月
  13. 5个值得收藏的图片素材APP 和网站,高品质外加免费,拿走不谢
  14. GetDC()没有释放造成的后果
  15. android java.lang.ClassNotFoundException但此类已存在
  16. C语言-getchar/putchar详解
  17. JavaScript的迭代器与生成器
  18. 怎么在c语言中使用常用对数,【用法】在C语言中使用对数函数的方法
  19. 软件工程 软件过程管理
  20. 一台计算机安装了fortran语言,第一章计算机Fortran语言简介精要.ppt

热门文章

  1. 新加坡政府设立网络安全实验室
  2. 新加坡政府将与加美两国就网络安全问题展开合作
  3. H265 CTU、CU、PU、TU划分的特点及要求
  4. 计算机制作节日贺卡教案,《制作节日贺卡》教学设计..doc
  5. 自定义数据集算子数据结构
  6. 温莎大学的计算机专业,2017加拿大计算机专业前七名
  7. stony大学计算机科学找工作,如果我本科四年在加州大学洛杉矶分校安德森商学院就读,毕业后我实在当地找工作好还是回国比较好?哪个待...
  8. 新浪云sae部署php,如何在新浪云 SAE 上安装部署 Laravel 5.1 应用并测试数据库连接...
  9. duilib隐藏(显示)任务栏图标方式
  10. eleme 分页组件更新