我正在尝试在Cloud Code中运行以下解析后台作业
Parse.Cloud.job("sendAlert", function(sendAlert) {
Parse.Push.send({
data: {
"content-available": 1,
}
}, {
success: function() {
status.success("Push Worked!!!");
},
error: function(error) {
status.error("Uh oh, something went wrong.");
}
});
});
运行时的预期结果是"透明" (用户看不到,但应用程序看到)推送发送给用户。
当我运行它时,我收到错误
工作: 请将SendAlert E2015-02-20T19:17:22.637Z] v17:Ran job sendAlert: 输入:{} 失败:引用错误:未定义状态 在Object.Parse.Push.send.error(main.js:12:5) 在Parse.js:2:7940 在f(Parse.js:2:6852) 在Parse.js:2:6344 at Array.forEach(native) 在Object.x.each.x.forEach [as _arrayEach](Parse.js:1:661) 在c.extend.reject(Parse.js:2:6297) 在Parse.js:2:6956 在f(Parse.js:2:6852) 在Parse.js:2:7386
在日志中。我究竟做错了什么?谢谢,并欣赏它 - 在这里完全解析新手。
答案 0 :(得分:1)
如果您在代码中查找单词status
,您会发现自己没有在任何地方声明它。一个名为status
的变量不能无处不在,所以这就是你得到一个ReferenceError的原因。
根据documentation,传递到Parse.Cloud.job()
回调的第二个参数是一个JobStatus
对象,其error
和success
方法,所以似乎是你想要使用的是什么:
// declare it here ---------v
Parse.Cloud.job("sendAlert", function(sendAlert, status) {
Parse.Push.send({
data: {
"content-available": 1,
}
}, {
success: function() {
status.success("Push Worked!!!");
},
error: function(error) {
status.error("Uh oh, something went wrong.");
}
});
});