Sobes.tech
Junior — Middle

Ar turite patirties dirbant su serverio įvykiais (Server-Sent Events)?

sobes.tech AI

Atsakymas iš AI

Taip, turiu patirties su serverio pusės įvykiais (Server-Sent Events, SSE). Tai technologija, leidžianti serveriui siųsti klientui srautą atnaujinimų per vienpusišką HTTP ryšį.

Go kalboje SSE įgyvendinimui dažniausiai naudojami:

  • Nustatyti antraštes Content-Type: text/event-stream.
  • Laikyti atvirą HTTP ryšį.
  • Siųsti duomenis įvykių formatu, pavyzdžiui:
w.Header().Set("Content-Type", "text/event-stream")
w.Header().Set("Cache-Control", "no-cache")
w.Header().Set("Connection", "keep-alive")

fmt.Fprintf(w, "data: %s\n\n", message)

SSE naudingi realiu laiku duomenų atnaujinimui, pavyzdžiui, pranešimams ar naujienų srautams, be nuolatinio serverio užklausų siuntimo.