Monaca推送通知后端管理API无法正常工作

时间:2014-05-01 15:15:35

标签: ios json push-notification json-rpc monaca

我正在尝试Monaca推送通知API教程(http://monaca.mobi/en/blog/archives/265)使用我的命令提示符下的curl向我的iPhone发送推送通知。

如果我使用它:

curl --insecure https://cloud.monaca.mobi/manage/json-rpc/##### --data '{"jsonrpc": "2.0", "id": 1, "method": "Push.send", "params": { "pushProjectId": "#####", "platform": "ios", "target": "debugger", "buildType": "debug", "message": "manage sample" , "json" : "{ \"url\" : \"http://www.google.co.jp\" }", "deviceIdList": ["#####"] } }' --header 'X-Monaca-Backend-Management-API-Key: #####'  

我收到这些错误:

curl: (6) Could not resolve host: id
curl: (6) Could not resolve host: 1,
curl: (6) Could not resolve host: method
curl: (6) Could not resolve host: Push.send,
curl: (6) Could not resolve host: params
curl: (3) [globbing] unmatched brace in colum
curl: (6) Could not resolve host: pushProject
curl: (6) Could not resolve host: ###
curl: (6) Could not resolve host: platform
curl: (6) Could not resolve host: ios,
curl: (6) Could not resolve host: target
curl: (6) Could not resolve host: debugger,
curl: (6) Could not resolve host: buildType
curl: (6) Could not resolve host: debug,
curl: (6) Could not resolve host: message
curl: (6) Could not resolve host: manage samp
curl: (6) Could not resolve host: ,
curl: (6) Could not resolve host: json
curl: (7) Failed connect to :80; No error   

然后我尝试将数据保存到senddata.json文件

{
    "jsonrpc": "2.0", 
    "method": "Push.send", 
    "params": { 
        "pushProjectId": "#####", 
        "platform": "ios", 
        "target": "debugger", 
        "buildType": "debug", 
        "message": "manage sample" , 
        "json" : "{ \"url\" : \"http://www.google.co.jp\" }", 
        "deviceIdList": [ "#####" ] 
     },
     "id": 1
}

并使用此命令调用:

curl --insecure https://cloud.monaca.mobi/manage/##### --data C:\myfilepath\senddata.json -H "Content-Type: application/json" --header "X-Monaca-Backend-Management-API-Key: #####"  

但它也会返回此错误:

{"jsonrpc":"2.0","id":null,"error":{"code":-32700,"message":"Parse error"}}

1 个答案:

答案 0 :(得分:1)

问题解决了。似乎在Windows上的命令提示符下运行curl命令有一些问题会返回错误,例如curl: (3) [globbing] unmatched brace in colum

如果您遇到同样的问题,请按照/重新检查以下步骤:

  1. 检查您是否在Windows上正确安装了卷曲(http://guides.instructure.com/s/2204/m/4214/l/83393-how-do-i-install-and-use-curl-on-a-windows-machine
  2. 安装并使用cygwin终端
    http://hariniachala.blogspot.com/2012/08/running-curl-commands-in-command-prompt.html
    因为DOS环境似乎不像单引号。任何使用单引号括起值的示例在Windows上都是无效的。必须用双引号替换单引号。
  3. 希望这有帮助。