Могу ли я настроить чат socket.io на heroku ?

У меня есть простое чат-приложение socket.io, которое я загрузил в один из новых стеков Heroku 'cedar' .

Теперь у меня почти есть все работает, но я наткнулся на один камень преткновения. На моем локальном хосте я открываю соединение с сервером сокетов от клиента с помощью:

// lots of HTML omitted
socket = new io.Socket('localhost', {port: 8888});

Но на Heroku я, очевидно, должен заменить эти значения чем-то другим.

Я могу получить порт от объекта процесса на сервере вот так:

port = process.env.PORT || 8888

и передать это представлению.

Но что мне заменить на 'localhost' ?

28
задан MPelletier 3 June 2011 в 13:25
поделиться

2 ответа

Правильный способ в соответствии со статьей для heroku:

io.configure(function () { 
  io.set("transports", ["xhr-polling"]); 
  io.set("polling duration", 10); 
});
socket = new io.Socket();

Это гарантирует, что io.Socket не будет пытаться использовать WebSockets.

21
ответ дан 28 November 2019 в 03:11
поделиться

Не могли бы вы просто указать свое настоящее имя хоста?

0
ответ дан 28 November 2019 в 03:11
поделиться
Другие вопросы по тегам:

Похожие вопросы: