2016-07-19 5 views
1

パースクラウド関数のようなOneSignalのdocサンプルをコピーして貼り付けて、単純なテストを試してみましょう。ここに私の雲のコードは次のとおりです。パーズクラウドコードでOneSignalを使用してプッシュ通知を送信

Parse.Cloud.define('followPush', function(request, response) { 
send = function(request) { 

var promise = new Parse.Promise(); 

var jsonBody = { 
app_id: "XXX", 
included_segments: ["All"], 
contents: {en: "English Message"}, 
data: {foo: "bar"} 
}; 

Parse.Cloud.httpRequest({ 
         method: "POST", 
         url: "https://onesignal.com/api/v1/notifications", 
         headers: { 
         "Content-Type": "application/json;charset=utf-8", 
         "Authorization": "Basic XXX" 
         }, 
         body: JSON.stringify(jsonBody) 
         }).then(function (httpResponse) { 
           promise.resolve(httpResponse) 
           }, 
           function (httpResponse) { 
           promise.reject(httpResponse); 
           }); 

return promise; 
}; 

exports.send = send; 

}); 

私は私のサーバーのログの「要求タイムアウト」を取得し、クライアント側で「JSONテキストがで...開始されませんでした」。 OneSignal Webサイトからプッシュ通知を送信すると、その通知がユーザーに届きます。私はParseと一緒に作業しましたが、oneSignalで理解できません。

答えて

0

これを解決するためにOneSignal開発チームに連絡を取ったようです。他のStackOverflowのユーザーの利益のために

(私はOneSignalの作業を助ける)、次のように、解決策はあるためにあなたのhttpRequestコードを変更することでした:

Parse.Cloud.httpRequest({ 
    url: "https://onesignal.com/api/v1/notifications", 
    method: "POST", 
    headers: { 
    "Content-Type": "application/json;charset=utf-8", 
    "Authorization": "Basic XXX" 
    }, 
    body: JSON.stringify(jsonBody), 
    success: function(httpResponse) { 
    response.success("sent"); 
    }, 
    error: function(httpResponse) { 
    response.error('Failed with: ' + httpResponse.status); 
    } 
}); 
関連する問題