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 . Это вызывает многократные почтовые запросы.