同样的命令客户端和云函数查询结果不一样,客户端查出来是筛选的数据,云函数查的结果是全部数据,这是为什么?如果是传2个查询的条件在云函数里拼接 那查出来结果是一样的,但如果在客户端拼接好传的话查的就是全部数据。有大神帮我看看吗
var mengpai = ['花果山']
var dengji = ['175']
var wh = []
wh.push($.in(['$mengpai', mengpai]))
wh.push($.in(['$dengji', dengji]))
db.collection('accounts').aggregate().match(_.expr($.and(wh)))
.end()
.then(res => console.log('本地调用成功', res))
.catch(err => console.error(err))
wx.cloud.callFunction({
name: 'accountQuery',
data: {
wh:wh
}
}).then(res => {
console.log('云函数成功', res)
}).catch(res => {
console.log('失败', res)
})
云函数
// let mengpai = event.mengpai
// let dengji = event.dengji
// var wh=[]
// wh.push($.in(['$mengpai', mengpai]))
// wh.push($.in(['$dengji', dengji]))
let wh = event.wh
return await db.collection('accounts').aggregate().match(_.expr($.and(wh)))
.end()
云函数是管理员权限,获取全部数据。
小程序端看用户权限,看权限设置
权限不一样·