Добрый день.
Написал для своих нужд небольшой сервер на node.js (код ниже). Его задача предельно проста: запустили, сидит и слушает, когда придет запрос. Как запрос пришел - просто переправить его дальше (в моем случае в Slack). Запустил, вроде до какого-то времени все работает, но заметил, что спустя какое-то время сообщения перестали доходить в слак. Я зашел в командную строку, остановил сервер, и в этот момент куча сообщений сразу дошло в слак (одновременно). Они почему-то накопились, и отправились только когда сервер остановился. С чем такое может быть связано? Что я не так сделал или чего наоборот не сделал?
const http = require("http");
const fs = require("fs");
const request = require('request');
const html = fs.readFileSync("./index.html");
const server = http.createServer((req, res) => {
const { method, url } = req;
if (url === '/' && method === "GET") {
console.log(`URL of GET request: ${url}`);
res.end(html);
}
if (url === '/' && method === "POST") {
console.log(`URL of POST request: ${url}`);
let data = "";
req
.on("data", chunk => {
data += chunk.toString();
})
.on("end", () => {
console.log(`Received data: ${data}`);
const slackBody = {
"text": data
};
const message = JSON.stringify(slackBody);
request.post(
{
headers: {'Content-type': 'application/json'},
url: 'https://someurl',
body: message
}, (err,res) => {
if (err) console.log(err);
console.log(res.statusCode);
console.log(res.body);
}
)
});
}
});
server.listen(3000, () => console.log("Server is running"));