← Cloudflare Workers / workers / runtime-apis
EventSource
Контекст
EventSource ↗ интерфейс представляет собой API для server-sent событий, который позволяет серверу отправлять события клиенту. EventSource объект используется для получения server-sent events. Он подключается к серверу по HTTP и получает события в текстовом формате.
Конструктор
let eventSource = new EventSource(url, options);urlUSVString: URL, к которому выполняется подключение.optionsEventSourceInit: необязательный словарь с любыми дополнительными настройками.
По умолчанию EventSource будет использовать глобальный fetch() функцию под
капотом для выполнения запросов. Если вам нужна другая реализация fetch,
предоставленная через привязку Cloudflare Workers, вы можете передать fetcher параметр:
export default {
async fetch(req, env) {
let eventSource = new EventSource(url, { fetcher: env.MYFETCHER });
// ...
}
};Обратите внимание на fetcher параметр представляет собой специфичное расширение Cloudflare Workers.
Свойства
eventSource.urlUSVString, только для чтения- URL источника события.
eventSource.readyStateUSVString, только для чтения- Состояние соединения.
eventSource.withCredentialsBoolean только для чтения- Логическое значение, указывающее, что
EventSourceобъект был создан с установленными межсайтовыми (CORS) учётными данными (true), или нет (false).
- Логическое значение, указывающее, что
Методы
eventSource.close()- Закрывает соединение.
eventSource.onopen- Обработчик события, вызываемый при открытии соединения.
eventSource.onmessage- Обработчик события, вызываемый при получении сообщения.
eventSource.onerror- Обработчик события, вызываемый при возникновении ошибки.
События
message- Возникает при получении сообщения.
open- Возникает при открытии соединения.
error- Возникает при ошибке.
Методы класса
-
EventSource.from(readableStreamReadableStream) : EventSource- Это специфичное для Cloudflare Workers расширение, которое создает новый
EventSourceобъект из существующегоReadableStream. Такой экземпляр не инициирует новое соединение, а вместо этого подключается к предоставленному потоку.
- Это специфичное для Cloudflare Workers расширение, которое создает новый