SSE (Server-Sent Events)

ラジオのようなもの。サーバーが話し、ブラウザは聞くだけ。通知やフィード更新用。

EventSource API

notifications.ts
// Client
const eventSource = new EventSource("/api/updates");
eventSource.onmessage = (event) => {
const data = JSON.parse(event.data);
console.log("New Update:", data);
};

vs WebSocket?

  • Pros (SSE): 単純なHTTPなのでファイアウォールに通りやすい。再接続が自動。
  • Cons (SSE): 一方向のみ。ブラウザから送信はできない。