我想在推送通知中向Windows 7+发送json有效负载。我正在使用MPNS。我使用AWS 服务发送推送通知。如果我要发送字符串有效负载,则.Everything对字符串有效负载起作用。我被Json的有效载荷困住了。
paylaod = {default: "None", MPNS: "<?xml version=\"1.0\" encoding=\"utf-8\"?><wp:Notification xmlns=\"WPNotification\"><wp:Toast><wp:Text1>SNS Test Message</wp:Text1></wp:Toast></wp:Notification>"}
resp = SNS.publish( target_arn: "arn:aws:sns:usXXXb64", message: paylaod.to_json, message_structure: 'json')发布于 2015-07-30 10:09:11
我对Ruby语言非常陌生,但在我看来,您的调用缺少消息属性,这对于基于JSON的MPNS消息来说是必需的。
这两个属性如下:
供参考的属性如下:
AWS.SNS.MOBILE.MPNS.Type
类型:字符串
可能值:token (用于瓷砖通知)、toast或rawAWS.SNS.MOBILE.MPNS.NotificationClass
类型:字符串
可能的值:realtime*,priority,regular (与Java一起为我实时工作)所以最后一行应该是这样的:
resp = SNS.publish(
target_arn: "arn:aws:sns:usXXXb64",
message: paylaod.to_json,
message_structure: 'json',
message_attributes: {
"AWS.SNS.MOBILE.MPNS.Type" => {
data_type: "String",
string_value: "toast"
},
"AWS.SNS.MOBILE.MPNS.NotificationClass" => {
data_type: "String",
string_value: "realtime"
}
})请注意,message_structure: 'json'行同样重要。
https://stackoverflow.com/questions/31692402
复制相似问题