У меня есть приложение Ionic 3 с бэкэндом API node.js, размещенное в Heroku.Также я хочу использовать push-уведомление с OneSignal.Пока что я завершил процесс установки и внедрения Ionic Cordova.На данный момент я могу получать уведомления только с помощью панели Onesignal.Сейчас я пытаюсь отправить уведомление с помощью моего приложения node.js, но я не получаю уведомления.
В моем приложении node.js у меня есть следующий код:
app.post('/api/push', function(req, res) {
var sendNotification = function (data) {
var headers = {
"Content-Type": "application/json; charset=utf-8",
"Authorization": "Basic xxxxxxx-my-onesignal-rest-api-key"
};
var options = {
host: "onesignal.com",
port: 443,
path: "/api/v1/notifications",
method: "POST",
headers: headers
};
var https = require('https');
var req = https.request(options, function (res) {
res.on('data', function (data) {
console.log("Response:");
console.log(JSON.parse(data));
});
});
req.on('error', function (e) {
console.log("ERROR:");
console.log(e);
});
req.write(JSON.stringify(data));
req.end();
};
var message = {app_id: "xxxx-my-app-id", содержимое: {"en": "пример сообщения"}, includes_segments: ["All"]};
sendNotification (сообщение);});
После запроса POST в журналах приложений Heroku я вижу следующее:
heroku[router]: at=info method=OPTIONS path="/api/push" host=xxxxxx.herokuapp.com request_id=xxxxx-xxx-xxxx fwd="xxx.xx.xx.xx" dyno=web.1 connect=0ms service=10ms status=200 bytes=215 protocol=https
Итак, я вижу, что запрос POST успешен, но я все еще не могуполучать уведомления на устройство.