узел: getaddrinfo ENOTFOUND (localhost:5000) работает на другом localhost:8888
Итак, у меня есть этот пример кода ниже.
var newUrl = {
host: 'localhost',
port: 5000,
path: '/histo',
// method: 'GET'
}
var newestUrl = JSON.stringify(newUrl)
console.log("newestUrl " + newestUrl)
httpGet(newestUrl, address, function (result) {
if (response.finished) {
// we can be here if error happened on socket disconnect
return;
}
if (result.status !== 'ok') {
if (result.status === 'ERR_SOCKET') {
console.log('Socket problem with request: ' + result.errmsg);
sendError("Socket problem with request " + result.errmsg, response);
return;
}
console.error(dateForLogs() + "Error response from quandl for key " + key + ". Message: " + result.errmsg);
markQuandlKeyAsInvalid(quandlKey);
sendError("Error quandl response " + result.errmsg, response);
return;
}
этот код работал на localhost с портом 8888,
и мне нужно передать некоторый json из имеющегося у меня API, localhost:5000/histo, откуда и возникает ошибка getaddrinfo ENOTFOUND.
Я уже добавил 127.0.0.1 localhost из etc\host (я не знаю, требует ли для обновления этого файла перезагрузки ПК, но я все равно этого не делал). Я уже много гуглил об этой ошибке, но выиграл т работать.
1 ответ
Если вам нужно отправить запрос на какой-то адрес, вам необходимо, чтобы на этом адресе был запущен сервер. Убедитесь, что на момент отправки запроса оба localhost:8888 и localhost:5000 работают.
Если у вас проблемы с разрешением имен, вам нужно отредактировать /etc/hosts, а не ip. Предположим, вы запускаете какой-то localhost:3656 и хотите сделать запрос на нем как example.com, тогда вам нужно добавить строку в /etc/hosts, чтобы объяснить, что example.com необходимо преобразовать как localhost:3656