Javascript может получить запрос сокета? - PullRequest
5 голосов
/ 26 марта 2011

Как я могу заставить мое клиентское приложение javascript получать запросы сокетов?Я имею в виду не ответ на запрос, а сам запрос.
Javascript работает в браузере без HTML5.

Дело в том, что я хочу, чтобы моя веб-страница перезагружала измененный контент, но без необходимости делать запроссервер каждые несколько минут.
Я надеюсь, что сервер может сделать некоторый запрос на javascript на странице, заставляя его обновить страницу.Если нет, то что вы могли бы предложить вместо javascript в этой области.

Ответы [ 2 ]

5 голосов
/ 26 марта 2011

Многие браузеры, поддерживающие HTML5, реализуют интерфейс WebSocket. WebSocket обеспечивает двустороннюю связь, поэтому браузер и сервер могут отправлять запросы. Проверьте этот пост для получения дополнительной информации Какие браузеры поддерживают HTML5 WebSocket API?

Если ваш браузер не поддерживает WebSockets, вы можете попробовать эмуляцию WebSocket, написанную на Flash / JS с этого сайта https://github.com/gimite/web-socket-js

Если это также не подходит для вас, тогда последний вариант - «длинный опрос». В этом случае браузер запрашивает данные у сервера, и если у сервера нет информации, доступной для браузера, он не отправляет пустой ответ. Он удерживает запрос и ожидает появления новых данных. Браузер после получения новых данных сразу же запрашивает у сервера еще раз. Проверьте эти ссылки для получения дополнительной информации: http://en.wikipedia.org/wiki/Push_technology http://en.wikipedia.org/wiki/Comet_(programming)

4 голосов
/ 26 марта 2011

Да и нет.

нет

Нет

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

Да

Тем не менее, JS является полноценным языком программирования, поэтому, если он работает в среде, где он не поврежден, да, он может сделать это и даже больше.

Хорошим примером является node.js - http://nodejs.org/

Вики-страница - http://en.wikipedia.org/wiki/JavaScript#Uses_outside_web_pages

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...