2009-02-20 2 views
3

Я пытаюсь написать простой клиент чата в javascript, но мне нужен способ обновления сообщений в режиме реального времени. Хотя я мог бы использовать функцию xmlhttprequest, я считаю, что он использует порт TCP/IP на сервере и, возможно, более важно, не разрешен в моем текущем пакете хостинга. В любом случае, это не идеальное решение, так как кажется, что немного неудобно постоянно открывать соединение, и было бы намного проще, если бы я мог просто слушать порт и брать данные по мере их поступления. Я посмотрел в Интернете и нашел много ссылок на комету и непрерывный опрос, которые неудовлетворительны, и многие люди говорят, что javascript на самом деле не подходит для него, с чем я могу согласиться. Теперь я узнал немного больше о том, как работает Интернет, это кажется выполнимым. Мне не нужно беспокоиться о отправке сообщений до сих пор; Я могу справиться с этим, но есть ли способ прослушать определенный порт на javascript?порт прослушивания в javascript

+0

Вы говорите о в браузере JavaScript? Или что-то другое? – AnthonyWJones

ответ

-4

Считаете ли вы, возможно, создание своего приложения в Flex? Вы могли бы сделать использование XMLSocket класса Flex для реализации низкой латентностью чат-клиент - довольно много вид вещи он был разработан, чтобы сделать

+1

Удалите этот ответ. – Pacerier

1

Вам понадобится сторонняя библиотека, которую вы можете загрузить в контекст Javascript.

Javascript сам не может этого сделать, и вряд ли вы могли (и, конечно же, не должны) делать это в браузере.

+0

Есть ли способ сделать звонки на скрипт Python из Javascript в браузере? – CodyBugstein

9

Прослушивание порта невозможно в Javascript.

Но:

XMLHttpRequest можно на хосте, так как это простой запрос HTTP на специальном сайте, как chat.php?userid=12&action=poll&lasttime=31251 где сервер печатает все новые сообщения с момента LastTime как результат.

1

Посмотрите на Comet

+1

Комета уже упоминалась в вопросе. – andynormancx

+0

вопрос был замечен. НЕ говорил, что ссылки на самом деле смотрели .. Comet - отличное решение –

Смежные вопросы