# sse **Repository Path**: kaylee595/sse ## Basic Information - **Project Name**: sse - **Description**: Go中对SSE的操作库 - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-10-16 - **Last Updated**: 2025-10-16 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # SSE 当前只完成了对SSE的读取操作 如果你只需要对SSE的数据进行解码, 你可以使用本库. ## 快速开始 ```go package main import ( "net/http" ) func main() { resp, _ := http.Get("https://example.com/sse") defer resp.Body.Close() d := NewDecoder(resp.Body) for { event, err := d.ReadEvent() if err != nil { if errors.Is(err, io.EOF) { break } panic(err) } fmt.Println(event.IdString()) fmt.Println(event.EventString()) fmt.Println(event.DataString()) } } ``` ### data为json数据时, 简单的从中获取数据 JSONPath语法参考: https://github.com/tidwall/gjson ```go event.Data.JSONPath("person.username").String() event.Data.JSONPath("person.age").Int() event.Data.JSONPath("person.hobbies.0").String() ``` ### 解码base64的data数据 ```go data, err := event.Data.Base64Decode() ```