порт прослушивания в JavaScript - PullRequest
3 голосов
/ 21 февраля 2009

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

Ответы [ 4 ]

9 голосов
/ 21 февраля 2009

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

Но:

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

1 голос
/ 21 февраля 2009

Взгляните на Комету

1 голос
/ 21 февраля 2009

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

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

0 голосов
/ 21 февраля 2009

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

...