小程序判断用户权限 这个代码怎么设置多个管理员啊,现在只能有一个

问题遇到的现象和发生背景

参考这位老兄的帖子,但是只有数据库的第一个openid的用户有效,其他的不起作用。而且每次打开小程序都会消耗十多次数据库读请求数。

https://blog.csdn.net/qq_44577070/article/details/104364152

问题相关代码,请勿粘贴截图

这是云函数代码:

img

这是数据库:

img

这是判断权限代码:

img

运行结果及报错内容

只有数据库的第一个openid的用户有效,其他的不起作用。其他的openid放在数据库第一个记录就可以使用,后面的就完全没用。而且每次打开小程序都会消耗十多次数据库读请求数。

img

我想要达到的结果

想要添加30位管理员,其他用户不能看见那个按钮,而且云函数免费版每天只有500次数据库读请求次数,希望每次使用小程序能少点请求次数

鉴权完毕后题主应该用localStorage存储当前用户的权限,而不是每次进入页面就调用db.collection('author')来读取集合中数据重新判断用户的权限。原博主的代码只是获取集合第一个项进行对比,可以直接读取对应的记录的。要么就遍历对比返回的所有云记录