Como funciona
SSE (Server-Sent Events) é um padrão HTTP em que o servidor mantém uma conexão aberta e envia mensagens ao cliente conforme elas são geradas. O cliente usa a API EventSource do navegador (ou lê o stream em outras linguagens) e recebe eventos em tempo real.
Diferente do WebSocket, que é bidirecional, o SSE é unidirecional: só o servidor envia. Isso simplifica a implementação e funciona sobre HTTP normal, passando por proxies e firewalls com menos problemas.
Exemplo prático
Um servidor envia eventos SSE assim:
curl -N https://api.exemplo.com/stream \
-H "Accept: text/event-stream"A resposta chega em blocos com o prefixo data::
data: {"token": "Olá"}
data: {"token": " mundo"}
data: [DONE]O cliente lê cada linha e atualiza a interface. APIs de chat (OpenAI, Anthropic) usam SSE para streaming de respostas.
Para que serve
SSE serve para casos em que o servidor precisa empurrar dados ao cliente de forma contínua: streaming de respostas de modelos de IA, notificações, logs em tempo real e progresso de tarefas longas. É a base técnica do streaming de resposta em muitos produtos de IA, por ser simples e compatível com HTTP.