Как избежать ошибки NodeJS ECONNRESET?
У меня запущено приложение, которое каждые 20-30 минут выполняет http.request. Когда я делаю эти запросы каждые 10 секунд или около того, все работает нормально, но когда между запросами возникает промежуток в 30 минут, я получаю следующее сообщение об ошибке.
{ [Error: read ECONNRESET] code: 'ECONNRESET', errno: 'ECONNRESET', syscall: 'read' }
Теперь я думаю, что это ошибка тайм-аута. Соединение обрывается в фоновом режиме, и когда происходит следующий запрос, он выдает эту ошибку, поскольку соединение разорвано.
Теперь моя идея - закрывать соединение после каждого запроса и переустанавливать соединение при каждом новом запросе. Но я не знаю, как это сделать в NodeJS.
ОБНОВИТЬ
Я обнаружил, что проблема появляется, когда я впервые GET
чем POST
и опять GET
,
Вот код для GET
а также POST
https.request({ method: 'GET'..., function(res) {
}).on('error', function(e) {
throw 'error';
}).end();
var request = https.request({ method: 'POST'..., function(res) {
}).on('error', function(e) {
throw 'error';
});
request.write(query);
request.end();