COMET
События на сервере могут быть - новое сообщение, обновление данных другим пользователем, и т.п.
При этом не клиент присылает свои данные, а сервер. В этом разделе описаны различные технические свойства для такой передачи.
- COMET: серверная часть - паттерны реализации
В этой статье мы рассмотрим распространенные способы создания COMET-сервера и примеры таких серверов на языках Java, Javascript, Python, Erlang.
Основное внимание уделено паттернам серверной поддержки, хотя и примеры реализаций, рассмотренные ниже, вполне расширяемы и жизнеспособны. читать дальше »
- Передача данных по инициативе сервера, обзор COMET
COMET-технологии позволяют организовать обновление данных на странице без участия пользователя.
Чаты, интернет-почта и многопользовательские админки - далеко не полный список, где они применимы.
В этом цикле статей - подробно описаны многочисленные тонкие моменты и решения частых проблем. читать дальше »
- Частые опросы (polling)
Первое решение, которое приходит в голову для получения событий с сервера - это "поллинг" (polling), т.е периодический опрос сервера стандартными пакетами: "я тут, изменилось ли что-нибудь?" читать дальше »
- Длинные опросы (long poll)
Другое название способа - "Очередь ожидающих запросов". Краткая схема такова:
- Отправляется запрос на сервер
- Соединение не закрывается сервером
- Событие отправляется в ответ на запрос
- Клиент тут же отправляет новый ожидающий запрос
читать дальше » - Бесконечный IFrame
Бесконечный IFrame - одна из основ ранних, да и современных AJAX-приложений. В этом транспорте - больше всего тонкостей (естественно, это ж хак оконного интерфейса! , которые я постарался раскрыть и продемонстрировать в этой статье. читать дальше »
- HTML5 Event-source, Opera
Рабочая группа WHATWG по доработке HTML предложила свой стандарт для получения событий с сервера в HTML 5.0. Для этого в нем предусмотрен специальный элемент event-source, который
реализован в Opera 9+, и предоставляет довольно удобный способ реализации событий с сервера. читать дальше »
- Multipart XMLHTTPRequest
Этот способ, как ни странно, поддерживается только Firefox. На момент написания Opera и Safari под Windows не поддерживали его. Он представляет собой XHR-запрос, ответ на который может быть разделен на части. При получении новой части вызывается onload(). читать дальше »
- XMLHTTPRequest, состояние interactive
Официально у объекта XMLHTTPRequest есть состояние readyState=3, interactive , при котором ответ находится в процессе загрузки, и уже полученная часть может быть прочитана в responseText .
В ряде браузеров это действительно работает, и состояние interactive можно использовать для передачи сообщений с сервера. читать дальше »
|