微信公众号扫一扫,ios报错fail {“errMsg“: “scanQRCode:the permission value is offline verifying“}
比如我的是要从start.vue跳到login.vue,并在login.vue进行扫一扫登录,那start.vue的页面跳转只能用location.href = '/login',用router.push就会报错(push跳转改为window.loaction.href跳转;window.loaction.href跳转才能改变地址栏的变化,才能签名成功。地址栏问题:push的跳转不能被写入ios微
·
login.vue
// 调用微信扫一扫
const getSDK = () => {
const url = window.location.href // 获取当前页面地址
getJsSdk(url).then(res => { // getJsSdk后端传回来的jssdk
wx.config({
debug: false,
appId: res.data.appId,
timestamp: res.data.timestamp,
nonceStr: res.data.nonceStr,
signature: res.data.signature,
jsApiList: [ 'scanQRCode']
})
wx.ready(() => {
wx.checkJsApi({
jsApiList: [ 'scanQRCode'],
success: function (res) {
if (res.checkResult.scanQRCode === true) {
wx.scanQRCode({
needResult: 1,
scanType: ['qrCode'],
success: function (res) {
// 使用 URL 对象解析 URL 字符串
const urlObj = new URL(res.resultStr);
const userId = urlObj.searchParams.get("userId");
if(userId) {
getUser(userId) // 绑定用户信息并登录
}
},
fail: function (res) {
console.log('fail', res)
}
})
} else {
console.log('抱歉,当前用户端版本不支持扫一扫,请升级到最新版')
}
},
fail: function (res) {
console.log('fail', res)
}
})
})
//
// wx.error((res) => {
// console.log('配置验证失败', res)
// })
})
}
JSSDK官网:概述 | 微信开放文档
2. scanQRCode:the permission value is offline verifying的报错
地址栏问题:push的跳转不能被写入ios微信浏览器的地址栏
解决方案:push跳转改为window.loaction.href跳转 ;window.loaction.href跳转才能改变地址栏的变化,才能签名成功
比如我的是要从start.vue跳到login.vue,并在login.vue进行扫一扫登录,那start.vue的页面跳转只能用location.href = '/login',用router.push就会报错(scanQRCode:the permission value is offline verifying)
更多推荐




所有评论(0)