我正在传递字符串类型的“消息”和[String]()
类型的“用户”
Parse.Cloud.define("invite", function(request,response) {
var message = request.params.message;
var pushQuery = new Parse.Query(Parse.Installation);
pushQuery.containedIn("user",request.params.User);
Parse.Push.send({
where: pushQuery,
data : {
alert: message,
"badge": 1,
}
}, {
success: function(result) {
console.log(JSON.stringify(result));
response.success(result);
},
error: function(error) {
console.error(JSON.stringify(error));
response.error(error.message)
},
useMasterKey: true
});
});
尝试运行此代码时,日志中出现以下错误
_PushStatus Qwd8rDJKLu: error while sending push code=107, message=bad $in value
答案 0 :(得分:0)
提供给Parse.Query.containedIn
的第二个参数必须是array
。此bad $in value
错误消息can appear的唯一方法是第二个参数不是undefined
也不是array
时。
您应确保request.params.User
的值是实际的array
。您可以使用console.log(typeof request.params.User)
进行检查。
当您声明要传递类型[String]()
时,它可能会转换为带括号和全部的实际字符串。