Uniapp 微信公众号 AccessToken 失效处理:清空缓存并重新授权
在 Uniapp 中,可以使用 uni.setStorageSync 和 uni.removeStorageSync 方法来清空缓存。当微信公众号 AccessToken 失效时,需要清空缓存并重新授权获取新的 Token。以下是具体步骤:
-
清空缓存
在需要清空缓存的地方,调用
uni.removeStorageSync方法,清空缓存中的access_token。uni.removeStorageSync('access_token'); -
重新获取 AccessToken
调用微信公众平台的授权接口,重新获取
access_token。uni.login({ provider: 'weixin', success: function (loginRes) { if (loginRes.code) { //调用后台接口获取access_token uni.request({ url: 'https://api.weixin.qq.com/cgi-bin/token', data: { grant_type: 'authorization_code', appid: 'your appid', secret: 'your app secret', code: loginRes.code }, success: function (res) { if (res.data.access_token) { //存储access_token到缓存中 uni.setStorageSync('access_token', res.data.access_token); } } }); } else { console.log('获取用户登录态失败!' + loginRes.errMsg) } } }); -
获取缓存中的 AccessToken
在需要使用
access_token的地方,调用uni.getStorageSync方法获取缓存中的access_token。var access_token = uni.getStorageSync('access_token');
注意:
- 在调用微信公众平台的授权接口之前,需要先调用
uni.login方法获取用户登录凭证。 - AccessToken 有效期,建议在使用前先进行校验,避免使用失效的 Token。
原文地址: https://www.cveoy.top/t/topic/oLUB 著作权归作者所有。请勿转载和采集!