如题,以下是云函数代码,很简单的获取用户信息,但使用doc(uid)就提示权限错误什么的,估计就是id传入错误,必须JSON.stringify(uid)或者doc("'"+uid+"'")才可以,即在uid包一层引号才可以,这是为什么?
'use strict';
const common = require('hello-common')
const createConfig = require('uni-config-center')
const uniIdCommon = require('uni-id-common')
const lssConfig = createConfig({
pluginId:'lss-stat'
})
const config = lssConfig.config()
exports.main = async (event, context) => {
// 从uni-id-common中获取用户信息
const userInfo = await uniIdCommon.createInstance(
{
context:context
}
)
const payload = await userInfo.checkToken(event.uniIdToken)
const db = uniCloud.databaseForJQL(event,context)
const res = await db.collection('uni-id-users')
.doc(JSON.stringify(uid))
// .doc('${uid}')
// .where("id=="+ JSON.stringify(uid))
// .where('id=="${uid}"')
.field("username")
.get()
console.log("res:"+JSON.stringify(res))
return {
key:common.testKey,
version:common.getVersion()
}
//返回数据给客户端
// return {
// errCode:1,
// errMsg:"错误测试"
// }
};
0 个回复