我在Azure上设置了移动服务,并使用推送通知权限上传了开发证书。我正在使用单声道触摸从应用程序获取设备令牌并向其发送请求。插入项目时,我想向客户端发送推送,但在日志中我一直收到此错误
{ [Error: 400 - Invalid expression: '568d4f52 615ee9.......
其中表达式是我的设备令牌。如果我转到表格,我可以看到设备令牌与iOS应用程序中生成的设备令牌匹配。我确实将移动服务升级到增强型推送,但找不到任何如何推送给单个用户的示例。在我的代码中我有
request.execute();
push.apns.send(item.pushNotificationHandle, {
alert : 'testing',
payload: { text1: 'inner text' }
}, {
error: function(error){
console.error(error);
}
});
Azure网站上的文档似乎变得非常陈旧,所以我不知道错误在哪里以及它应该如何不同。看看他们的服务器参考文档,我不知道为什么会失败
http://msdn.microsoft.com/en-US/library/azure/jj839711.aspx#send
有没有人有这方面的经验?我已经注销了“item.pushNotificationHandle”,它是一个符合预期的字符串(在表中匹配)
答案 0 :(得分:0)
感谢您指出尚未更新的文档。
请参阅此文档,了解几乎准确的push.apns推送版本:http://dl.windowsazure.com/nodedocs/ApnsService.html
你可以看到send方法的第一个成员是标签。
要使用增强型推送定位单个用户,您应该为该用户添加用户标签的唯一ID。然后,您将通知发送到该特定用户的标签。 (此功能也可用于发送到子集用户组。)