Как я могу обновить страницу для всех зарегистрированных пользователей (совместное редактирование) с помощью JavaScript, jQuery и HTML?

Я хочу, чтобы действие автоматически отражалось для всех вошедших в систему пользователей.


person user1707957    schedule 07.08.2010    source источник


Ответы (1)


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

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

Цитируя Comet Daily: метод длительного опроса:

Техника длительного опроса Comet — это метод, который оптимизирует традиционный опрос для уменьшения задержки.

Традиционный опрос отправляет XMLHttpRequest на сервер с фиксированными интервалами. Например, открывать новый XMLHttpRequest каждые 15 секунд, получать немедленный ответ и закрывать соединение.

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

В дополнение к вышесказанному я также предлагаю вам ознакомиться с принятым ответом на следующий пост Stack Overflow для подробного описания метода длинного опроса:

person Daniel Vassallo    schedule 07.08.2010