Files
bare/docs/decisions/004-sse-and-post.md
ClaudeandClaude Fable 5 3d814112a9 Заложить репозиторий: философия, архитектура, модель угроз, ADR
Документы фиксируют принятые проектные решения Bare:
клиент без фреймворков и сборки, Go-сервер одним бинарём,
E2EE на WebCrypto, сервер-реле без истории, локальная история
с экспортом/импортом, Web Push + VAPID. Кода нет — сначала документы.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01SW4ZXtKn5NjX8NH3Lhm2ND
2026-08-20 09:17:37 +00:00

1.0 KiB

ADR-004: Realtime через SSE и fetch POST

Контекст

Чату нужна доставка сообщений в реальном времени. WebSocket — отдельный протокол со своим жизненным циклом, капризами прокси и кастомным фреймингом. Хочется остаться в рамках голого HTTP.

Решение

Приём сообщений — Server-Sent Events. Отправка — обычный fetch POST. Чат поверх голого HTTP.

Следствия

  • Никакого кастомного протокола: всё видно в DevTools как обычные HTTP-запросы, реконнект SSE встроен в браузер.
  • Работает везде, где работает HTTPS, без апгрейда соединения.
  • Двунаправленного канала нет — он и не нужен: у отправки и приёма разные пути.