请提供一个检查token和返回userInfo的方法,谢谢!
下面是我的代码,报错:
async checkLogin() {
// 首先检查本地存储的token
const token = uni.getStorageSync('uni_id_token')
if (!token) {
this.navigateToLogin()
return
}
try {
// 方案1: 使用 check-login 云函数获取用户信息
try {
const res = await uniCloud.callFunction({
name: 'check-login',
data: {
token: token
}
})
console.log('check-login验证结果:', res)
if (res.result && res.result.code === 0) {
// 获取用户信息成功
this.userInfo = res.result.userInfo
// 如果返回了新token,更新本地存储
if (res.result.token) {
uni.setStorageSync('uni_id_token', res.result.token)
}
return
} else {
console.log('check-login验证失败:', res.result)
// 如果是401错误,清除本地token并跳转登录
if (res.result && res.result.code === 401) {
uni.removeStorageSync('uni_id_token')
this.navigateToLogin()
return
}
}
} catch (error) {
console.log('check-login验证失败:', error)
// 继续尝试备用方案
}
} catch (err) {
console.error('uni-id-common获取用户信息失败:', err)
} catch (backupErr) {
console.error('备用验证方案也失败:', backupErr)
this.navigateToLogin()
}
}
},
2 个回复
套马杆的套子 - 没有解决不了的问题,只有解决不完的问题
到哪块失败的?报啥错?
qifei32 (作者)
请提供一个检查token和返回userInfo的方法,谢谢!
下面是我的代码,报错:
async checkLogin() {
// 首先检查本地存储的token
const token = uni.getStorageSync('uni_id_token')
if (!token) {
this.navigateToLogin()
return
}
套马杆的套子
给报错信息扔上来看一眼
2025-11-20 08:06