实际上,我们已经完成了从移动设备向移动设备发送推送通知的功能。使用解析quires解析到移动设备。现在我们尝试使用Javascript从Web应用程序向移动设备发送推送通知。
function authentication() {
Parse.$ = jQuery;
// Initialize Parse with your Parse application javascript keys
Parse.initialize("app key",
"javascript key");
Parse.Push.send({
//where: pushQuery,
channels: [ "Demo","Done" ],
data: {
alert : "Hello word"
}}, { success: function() {
// Push was successful
alert : "Push was successful"
// debugger;
},
error: function(error) {
}}).then (function(error) {
//Marks this promise as fulfilled,
//firing any callbacks waiting on it.
});
}
Plz指导我们,我们是javascript的新手。 我们得到这样的错误
POST https://api.parse.com/1/push 400 (Bad Request)
答案 0 :(得分:1)
您是否在Parse应用的推送通知设置中激活已启用客户端推送?
但是,如果您决定从Cloud Code或任何其他客户端SDK之外的JavaScript SDK发送通知,则需要在Parse应用程序的推送通知设置中设置启用客户端推送。
来自:https://parse.com/docs/js/guide#push-notifications-sending-pushes
请注意,您不应该从任何客户端发送通知,而是从云代码触发通知
但是,请务必了解启用客户端推送可能会导致应用中出现安全漏洞,如我们的博客所述。我们建议您仅为测试目的启用Client Push,并在您的应用准备投入生产时将推送通知逻辑移至Cloud Code。
答案 1 :(得分:0)
我也是使用解析从javascript向移动设备发送通知。
我的代码与你几乎相似,只有一件事,
而不是这个
Parse.initialize("app key",
"javascript key");
我正在使用
Parse.initialize("APP_ID", "API_KEY", "JAVASCRIPT KEY");
我的完整代码是..虽然我使用的是node.js,但您可以使用相应的代码。
var query = new Parse.Query(Parse.Installation);
query.equalTo('installationId', parseInstallationId);
Parse.Push.send({
where: query, // Set our Installation query
data: {
alert: "Willie Hayes injured by own pop fly."
}
}, {
success: function() {
// Push was successful
console.log('successful');
},
error: function(error) {
// Handle error
console.log('error');
}
});