我研究了pushwoosh romote api,发送通知的基本过程是发送一条JSON数据到http://cp.pushwoosh.com/json/1.3/createMessage ,具体来说,数据会被打包格式如下
{'application' : PW_APPLICATION,
'auth' : PW_AUTH,
'notifications':{
'send_date' : 'now',
'content' : 'test',
'data' : {
'custom' : 'json data'
},
'link' : 'http://pushwoosh.com/'
}
}
pushwoosh 指南列出了 Java、PHP、Ruby 等中的一些示例代码。我很困惑 pushwoosh 不提供 nodejs 版本,所以我必须自己执行。我使用“http”模块发送请求和参数以及部分主要代码如下所示
var bodyArgs =
{'application' : PW_APPLICATION,
'auth' : PW_AUTH,
'notifications':{
'send_date' : 'now',
'content' : 'test',
'data' : {
'custom' : 'json data'
},
'link' : 'http://pushwoosh.com/'
}
}
var bodyArgsArray = [];
for (var i in bodyArgs) {
if (bodyArgs.hasOwnProperty(i)) {
if(typeof bodyArgs[i] == 'object'){
bodyArgsArray.push(i + '=' + (JSON.stringify(bodyArgs[i])));
}else{
bodyArgsArray.push(i + '=' + (bodyArgs[i]));
}
}
}
var options = {
host: 'cp.pushwoosh.com',
method: 'POST',
path: '/json/1.3/createMessage',
headers: {'Content-Length': bodyStr.length,
'Content-Type':'application/json',
'Access-Control-Allow-Origin':'*'
}
var req = http.request(options, function (res){...});
不幸的是,我收到了格式错误的回复
[syntax error at end of input]
如果请求处理成功,正确的响应应该是
{
"status_code":200,
"status_message":"OK",
"response": {
"Messages":["{Notification code}", "{Notification code}", ...]
}
}
我非常渴望找出正确的请求格式。如果可能的话,我将非常感谢某人的 nodejs 版本!
pushwoosh remote-api-guide 网站是
https://www.pushwoosh.com/programming-push-notification/pushwoosh-push-notification-remote-api/