qifei32
qifei32
  • 发布:2025-11-17 15:07
  • 更新:2025-11-18 11:18
  • 阅读:93

uni-id用户体系登录验证代码总是失败

分类:uniCloud

uni-id用户体系登录验证代码调试多次失败!

是否能提供一个官方的示例代码吗,实现功能包括:
用token校验用户是否登录,未登录跳转登录页,已登录获取用户信息数据,把用户信息显示到页面。

2025-11-17 15:07 负责人:无 分享
已邀请:
套马杆的套子

套马杆的套子 - 没有解决不了的问题,只有解决不完的问题

到哪块失败的?报啥错?

qifei32

qifei32 (作者)

请提供一个检查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()  
            }  
        }  
        },

要回复问题请先登录注册