Movatterモバイル変換


[0]ホーム

URL:


  1. Tecnologia Web para desenvolvedores
  2. APIs da Web
  3. EventSource

Esta página foi traduzida do inglês pela comunidade.Saiba mais e junte-se à comunidade MDN Web Docs.

View in EnglishAlways switch to English

EventSource

Baseline Widely available *

This feature is well established and works across many devices and browser versions. It’s been available across browsers since ⁨janeiro de 2020⁩.

* Some parts of this feature may have varying levels of support.

A interfaceEventSource é usada para receber eventos enviados pelo servidor (server-sent events). Ele se conecta via HTTP em um servidor e recebe eventos com o formatotext/event-stream. A conexão permanece aberta até ser fechada chamandoEventSource.close().

Assim que a conexão estiver aberta, mensagens recebidas do servidor são entregues para o seu código na forma de eventosmessage.

Ao contrário dosWebSockets, server-sent events são unidirecionais; ou seja, mensagens são entregues em uma direção, do servidor para o cliente (por exemplo, um navegador web). Isso torna-os uma excelente escolha quando não há necessidade de enviar mensagens do cliente para o servidor. Por exemplo,EventSource é uma abordagem útil para lidar com atualizações de status de mídias sociais, feeds de notícias, or entregar dados para um mecanismo dearmazenamento do lado cliente como oIndexedDB ou oweb storage.

Construtor

EventSource()

Cria um novoEventSource para receber enventos enviados pelo servidor de uma URL específica, opcionalmente no modo de credenciais.

Propriedades

Essa interface também herda propriedades do seu pai,EventTarget.

EventSource.readyStateSomente leitura

Um número representando o estado da conexão. Valores possíveis sãoCONNECTING (0),OPEN (1), ouCLOSED (2).

EventSource.urlSomente leitura

UmaDOMString representando a URL da origem.

EventSource.withCredentialsSomente leitura

UmBoolean indicando se aEventSource foi instanciada com credenciais cross-origin (CORS) definidas (true) ou não (false, o padrão).

Eventos

EventSource.onerror

É umevent handler chamado quando um erro ocorre e o eventoerror é despachado para o objetoEventSource.

EventSource.onmessage

É umevent handler chamado quando um eventomessage é recebido, ou seja, quando uma mensagem está sendo recebida da origem.

EventSource.onopen

É umevent handler chamado quando um eventoopen é recebido, ou seja, logo após a abertura da conexão.

Métodos

Essa interface herda métodos de seu pai,EventTarget.

EventSource.close()

Fecha a conexão, se houver, e define o atributoreadyState comoCLOSED. Se a conexão já estiver fechada, esse método não faz nada.

Exemplos

Nesse exemplo básico, umEventSource é criado para receber eventos do servidor; a página com o nome"sse.php" é responsável por gerar os eventos.

js
var evtSource = new EventSource("sse.php");var eventList = document.querySelector("ul");evtSource.onmessage = function (e) {  var newElement = document.createElement("li");  newElement.textContent = "message: " + e.data;  eventList.appendChild(newElement);};

Cada evento recebido faz com que o handler do eventoonmessage no objetoEventSource seja executado. Ele, em contrapartida, cria um novo elemento<li> e escreve os dados da mensagem nele, e em seguida concatena o novo elemento na lista já presente no documento.

Nota:Você pode encontrar um exemplo completo no GitHub — vejaSimple SSE demo using PHP.

Especificações

Specification
HTML
# the-eventsource-interface

Compatibilidade com navegadores

Veja também

Help improve MDN

Learn how to contribute

This page was last modified on byMDN contributors.


[8]ページ先頭

©2009-2025 Movatter.jp