云函数以及云对象在使用JQL的时候,执行update操作报错: 未能获取当前用户信息:30205 | 当前用户为匿名身份
只有在将表级和字段级permission中update都设置为true的时候,才能成功执行,但是这样设置权限的话,前端岂不是可以任意操作数据了,请指教?
schema:
{
"bsonType": "object",
"required": [],
"permission": {
"read": true,
"create": "auth.uid != null",
"update": "doc.user_id == auth.uid",
//"update": true,
"delete": "doc.user_id == auth.uid"
},
"properties": {
"_id": {
"description": "ID,系统自动生成"
},
"user_id": {
"bsonType": "string",
"forceDefaultValue": {
"$env": "uid"
},
"foreignKey": "uni-id-users._id",
"permission": {
"write": false
}
},
"update_time": {
"bsonType": "timestamp",
"description": "上次修改时间",
"forceDefaultValue": {
"$env": "now"
},
"permission": {
"read": true,
//"write": true
"write": "doc.user_id == auth.uid"
}
}
}
}
云对象:
const DB = uniCloud.databaseForJQL();
const CARD = DB.collection('biz-card')
let update_time = Date.now();
let res = await CARD.where('_id'=="${id}"
).update({update_time})
2 个回复
m***@qq.com
我也遇到这个问题了,怎么解决的?
aoaobaba - 稳中有进 别急~ 慢慢来
setUser