云函数调用数据库使用{openid}变量失效
更新: 最终问题解决了,起初翻阅文档看到云开发数据库配置中的{openid}变量,感觉十分便利,后尝试用云函数调用数据库时出现此问题,问题在于对说明文档的谬读: 安全规则是用来约束前端小程序调用数据库的,{openid}变量需搭配相关安全规则使用方有效,如: // 自定义安全规则
{
"read": "doc.publisher == auth.openid"
}
// 小程序端数据库逻辑
db.collection('test').where({
publisher: '{openid}'
}).get()
而对于云控制台和服务端(包括云函数)而言,始终具有所有数据的读写权限,安全规则的配置并不起作用,因此应该也无法使用{openid}。 [图片] 以上是目前本人针对该问题的个人理解。 -------------------------------------------------------------------------------------------------------------- 原文: 云函数调用数据库使用{openid}解析失效,小程序端调用数据库使用{openid}变量表现正常。 相关逻辑: [图片] 预期表现: [图片]