SSE (Server-Sent Events) в Go.

Ответ

Односторонний поток с сервера: соединение держится открытым, данные в формате text/event-stream (data:, id:, event:). В Go: w.Header().Set("Content-Type", "text/event-stream"), w.Flush() после каждой отправки, писать события в цикле. Клиент - EventSource. Удобно для уведомлений и лент. Таймауты и keep-alive (комментарии) для сохранения соединения.

w.Header().Set("Content-Type", "text/event-stream")
flusher := w.(http.Flusher)
fmt.Fprintf(w, "data: %s\n\n", data)
flusher.Flush()
🧠Квиз 🏆Лидеры 🎯Собесед. 📖Вопросы 📚База зн.