OpenShift: множественные почтовые запросы от nodejs были запущены

Я пробую облачный сервер OpenShift с экземпляром nodejs. Я пытаюсь выполнить запрос POST к API oneSignal.

POST успешен, но oneSignal отправляет 4 уведомления для одного POST.

Я думаю, что изолировал, что проблема связана с сервером OpenShift, потому что, когда я запускаю следующий код на своей локальной машине, я получаю одно уведомление, но когда код развертывается в OpenShift, я получаю 4 уведомления.

Ниже приведен тестовый код:

var request = require('request');

function sendNotification() { 
    var data = {};
    data.headings = {"en": "Trial Push Heading"}
    data.contents = {"en": "Trial Push Contents"};

    data.app_id = MY_APP_ID;
    data.included_segments = ["All"];


    var headers = {
        "Content-Type": "application/json",
        "Authorization": "Basic "+ MY_AUTH_KEY
    };

    var options = {
        url: "https://onesignal.com/api/v1/notifications",
        method: "POST",
        headers: headers,
        json: data
    }; 

    request(options, function (error, response, body) {
      if (!error && response.statusCode == 200) {
        console.log(body) // Print the shortened url.
      }
    });


};

1 ответ

Что ж...

Отвечая на мой собственный вопрос..

OpenShift инициализирует код из start.js.

Start.js реализует кластеризацию узлов и создает 4 экземпляра app.js . Это вызывает многократные почтовые запросы.

Другие вопросы по тегам