Эта статья нуждается в техническом обзоре. Как вы можете помочь.
Перевод не завершен. Пожалуйста, помогите перевести эту статью с английского.
Интерфейс EventSource
используется для получения серверных событий (Server-sent events). Он устанавливает соединение с сервером по HTTP и получает события в формате text/event-stream без закрытия соединения.
Вы можете присвоить атрибуту onmessage
JavaScript-функцию для получения нетипизированных сообщений (то есть сообщений без поля event
). Вы так же можете вызвать функцию addEventListener()
для прослушивания событий так же, как для любого другого источника событий.
См. Using server-sent events для более детальной информации
Методы
void close(); |
void init(in nsIPrincipal principal, in nsIScriptContext scriptContext, in nsPIDOMWindow ownerWindow, in DOMString url); Native code only! |
Свойства
Attribute | Type | Description |
onerror |
|
JavaScript-функция, вызываемая при появлении ошибки |
onmessage |
|
JavaScript-фнукция, вызываемая при приходе сообщения без поля event |
onopen |
|
JavaScript-функция, вызываемая после открытия соединения |
readyState |
long |
Состояние соединения, должно иметь одно из значений CONNECTING , OPEN , или CLOSED . Только для чтения |
url |
DOMString |
Только для чтения |
В дополение к открытым атрибутам два внутренних атрибута, которые не открыты напрямую:
- reconnection time
- Это время в миллисекунда, используемое для определения продолжительности ожидания после неудачной попытки соединения до повторного соединения
- last event ID string
- По-умолчания пустая строка. Сервер может отправлять сообщение с полем
id
для установки этого значения.
Константы
Constant | Value | Description |
CONNECTING |
0 |
Соединение устанавливается |
OPEN |
1 |
Соединение открыто, получение событий |
CLOSED |
2 |
Соединение не устанавливается, закрыто, или произошла фатальная ошибка |
Методы
close()
Закрывает соединение, если оно существует и устанавливает атрибуте readyState
в значение CLOSED
.
Если соединение уже закрыто, метод ничего не делает
void close();
Параметры
Нет
init
Инициализирует объект для использования из C++ кода с the principal, контекстом сценария, и окном, которое должно быть использовано.
void init( in nsIPrincipal principal, in nsIScriptContext scriptContext, in nsPIDOMWindow ownerWindow, in DOMString url );
Parameters
principal
- The principal для использования в запросе. Не может быть
null
. scriptContext
- Контекст сценария для использования в запросе. Может быть
null
. ownerWindow
- Ассоциированное окно для запроса. Может быть
null
. url
EventSource
URL. Не может быть пустым
См. также
Совместимость браузеров
Feature | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|
EventSource support | 9 | 6.0 (6.0) | ? | 11 | 5 |
CORS support | 26 | 11.0 (11.0) | ? | 12 | ? |
Feature | Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|
EventSource support | 4.4 | ? | ? | ? | ? |