2015-03-13 61 views
1

我试图发送一个简单的POST请求到推送远程API来创建推送通知。 (代码是咖啡,我建立使用离子框架的应用程序)Pushwoosh Angular简单的POST请求返回400

@sendPushMessage = -> 
 
     pushMessage = 
 
      { 
 
       "request": { 
 
        "application": PW_APP_ID, 
 
        "auth": API_TOKEN, 
 
        "notifications": [{ 
 
         "send_date": "now", 
 
         "ignore_user_timezone": true, 
 
         "content": "message", 
 
         "platforms": [1] 
 
        }] 
 
       } 
 
      }; 
 
     formattedPM = JSON.stringify(pushMessage) 
 
     console.log("JSON sent :"+formattedPM) 
 
     $http.post(createUrl, formattedPM).success((data, status, headers, config) -> 
 
      console.log("success") 
 
      return 
 
     ).error (data, status, headers, config) -> 
 
      console.log("failure") 
 
      return

的问题是,它返回一个错误的请求错误400它得到了选择,但它从来没有职位数据。我试图发布与邮差完全相同的数据,它的工作原理优雅。所以在这里我想知道为什么它不适用于Chrome。

我也尝试白名单中的应用程序配置域,徒劳。

有人可以帮我吗?

感谢

回答

0

我将此添加到我的角度配置,它现在的作品。

app.config(['$httpProvider', function ($httpProvider) { 
 
    //Reset headers to avoid OPTIONS request (aka preflight) 
 
    $httpProvider.defaults.headers.common = {}; 
 
    $httpProvider.defaults.headers.post = {}; 
 
    $httpProvider.defaults.headers.put = {}; 
 
    $httpProvider.defaults.headers.patch = {}; 
 
}]);