rice_z
rice_z
  • 发布:2023-03-19 15:38
  • 更新:2024-09-12 18:25
  • 阅读:647

【报Bug】云对象用url化时,提示:未能获取当前用户信息:当前用户为匿名身份

分类:uniCloud

【报Bug】云对象用url化时,提示:未能获取当前用户信息:当前用户为匿名身份

0 关注 分享

要回复文章请先登录注册

rice_z

rice_z (作者)

回复 m***@163.com :
你那个test函数里面的params变量是undefined吧? params = JSON.parse(this.getHttpInfo().body) 要改成 this.params = JSON.parse(this.getHttpInfo().body) --- let {token} = this.params; 然后你打印一下看看token有没有值
2024-09-12 16:49
m***@163.com

m***@163.com

// 客户端代码
const cloudTest = async () => {
await uni.request({
url: baseUrl + '/order/test',
method: 'POST',
data: {
token: uni.getStorageSync('uni_id_token')
}
}).then((res) => {
console.log('cloudTest', res);
})
}

// 云对象代码
_before: function () { // 通用预处理器
this.startTime = Date.now()

this.uniID = uniID.createInstance({ // 创建uni-id实例,其上方法同uniID
clientInfo: this.getClientInfo()
})

if(this.getHttpInfo().body) {
params = JSON.parse(this.getHttpInfo().body)
}
query = this.getHttpInfo().queryStringParameters

dbJQL = uniCloud.databaseForJQL({ // 获取JQL database引用,此处需要传入云对象的clientInfo
clientInfo: this.getClientInfo()
})
},

test: async function () {
let {token} = params;
const res = await this.uniID.checkToken(token)
return res
},

请求结果
code: 30202
errCode: "uni-id-check-token-failed"
errMsg: "Check token failed"

你好,我checkToken报错,请问你知道问题出在哪吗
2024-09-12 16:04
m***@163.com

m***@163.com

回复 rice_z :
好的,谢谢
2024-09-12 12:20
rice_z

rice_z (作者)

回复 m***@163.com :
是的,你可以在body或者请求头里面传给云端,自己在云端拿出来checkToken一下
2024-09-12 11:09
m***@163.com

m***@163.com

回复 rice_z :
token是从客户端传到云端,然后再checkToken一下吗
2024-09-12 10:49
rice_z

rice_z (作者)

回复 3***@qq.com :
解决了,大致思路是要在云端checkToken一下https://doc.dcloud.net.cn/uniCloud/uni-id/cloud-common.html#checktoken,拿到uid的值,然后setUser指定用户身份 https://doc.dcloud.net.cn/uniCloud/jql-cloud.html#set-user
2024-09-02 10:15
3***@qq.com

3***@qq.com

解决了吗??
2024-08-31 09:56