在安卓和微信开发工具中使用JSSDK的分享功能并没有报错,而到实机IOS系统中,每次分享完成后,再点击其他文章调用分享接口的时候随机会出现the permission value is offline verifying 错误,config是通过的 现在做的是H5的VUE项目,微信及其相关代码如下
iphonex 微信7.0.5 系统 IOS13.1 Appid wxb4b7b57489ccdb23 时间 2019/9/28 下午3点左右
/** * 微信js-sdk * 参考文档:https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421141115 */ import wx from 'weixin-js-sdk' import Axios from 'axios' const wxApi = { /** * [wxRegister 微信Api初始化] * @param {Function} callback [ready回调函数] */ wxRegister(data, option) { //data是微信配置信息,option是分享的配置内容 wx.config({ debug: true , // 开启调试模式 appId: data.app_id, // 必填,公众号的唯一标识 timestamp: data.timestamp, // 必填,生成签名的时间戳 nonceStr: data.noncestr, // 必填,生成签名的随机串 signature: data.signature, // 必填,签名,见附录1 jsApiList: [ 'checkJsApi' , 'updateTimelineShareData' , 'updateAppMessageShareData' , 'onMenuShareWeibo' ] // 必填,需要使用的JS接口列表,所有JS接口列表见附录2 }) wx.ready( function () { wx.updateTimelineShareData({ title: option.title, // 分享标题 // link: option.link, // 分享链接 link: option.link, // 分享链接 imgUrl: option.imgUrl, // 分享图标 desc: option.desc, // 分享描述 success() { // 用户成功分享后执行的回调函数 option.success() }, cancel() { // 用户取消分享后执行的回调函数 option.error() } }); wx.updateAppMessageShareData({ title: option.title, // 分享标题 desc: option.desc, // 分享描述 link: option.link, // 分享链接 imgUrl: option.imgUrl, // 分享图标 success() { // 用户成功分享后执行的回调函数 option.success() }, cancel() { // 用户取消分享后执行的回调函数 option.error() } }) }) } } export default wxApi |
// 微信分享 getWX_token() { this .$ajax({ method: "post" , url: "notice/get_token/" , data: { url: encodeURIComponent(location.href.split( "#" )[0]) } }) .then(response => { console.log(response); this .wx_data = response.data; this .wxApi(); }) . catch (error => { Toast({ message: "服务器出错,请尝试刷新" }); console.log(error + "测试错误" ); }); }, wxApi() { let data = this .wx_data; let option = { title: this .news.title, link: location.href.split( "#" )[0], imgUrl: "http://118.31.60.22/static/images/landimages/" + this .news.img, desc: this .news.desc }; wxapi.wxRegister(data, option); } |
the permission value is offline verifying这个错误是因为config没有正确执行,或者是调用的JSAPI没有传入config的jsApiList参数中。建议按如下顺序检查:
确认config正确通过。
如果是在页面加载好时就调用了JSAPI,则必须写在wx.ready的回调中。
确认config的jsApiList参数包含了这个JSAPI。
可参考:https://developers.weixin.qq.com/doc/offiaccount/OA_Web_Apps/JS-SDK.html#%E9%99%84%E5%BD%951-JS-SDK%E4%BD%BF%E7%94%A8%E6%9D%83%E9%99%90%E7%AD%BE%E5%90%8D%E7%AE%97%E6%B3%95