У меня установлено приложение Node Express на Heroku. На главной странице требуется около 50 HTTP-запросов к внешним службам для отображения данных. Запросы занимают так много времени, поэтому я использую кеш.
Теперь я периодически запрашиваю у себя веб-страницу, чтобы заставить Node продолжать обновлять и кэшировать данные. Таким образом, пользователю не нужно ждать 1 минуту, чтобы увидеть страницу.
Следующий код прекрасно работает на локальном компьютере. Но в производственной среде (Heroku) я получаю Error: connect ECONNREFUSED
setInterval(function() {
var url = "http://127.0.0.1:" + (process.env.PORT || 3000);
try {
http.get(url, {})
} catch (err) {
console.error('Error refreshing data')
console.error(err)
}
}, 1 * 60 * 1000)
Я пробовал:
http://127.0.0.1:" + (process.env.PORT || 3000)
https://127.0.0.1:" + (process.env.PORT || 3000)
0.0.0.0
Есть ли способ найти правильный ip / host и порт?
UPDATE
Имя хоста (https://nameofapp.herokuapp.com/
) действительно работает. Но есть ли способ позвонить себе, не зная хозяина?