fix: add nil check for Writer in FlushWriter function

This commit is contained in:
CaIon
2025-08-18 12:48:56 +08:00
parent adc7fbd424
commit f6d4c586eb

View File

@@ -15,6 +15,9 @@ import (
) )
func FlushWriter(c *gin.Context) error { func FlushWriter(c *gin.Context) error {
if c.Writer == nil {
return nil
}
if flusher, ok := c.Writer.(http.Flusher); ok { if flusher, ok := c.Writer.(http.Flusher); ok {
flusher.Flush() flusher.Flush()
return nil return nil
@@ -28,14 +31,14 @@ func SetEventStreamHeaders(c *gin.Context) {
return return
} }
// 设置标志,表示头部已经设置过
c.Set("event_stream_headers_set", true)
c.Writer.Header().Set("Content-Type", "text/event-stream") c.Writer.Header().Set("Content-Type", "text/event-stream")
c.Writer.Header().Set("Cache-Control", "no-cache") c.Writer.Header().Set("Cache-Control", "no-cache")
c.Writer.Header().Set("Connection", "keep-alive") c.Writer.Header().Set("Connection", "keep-alive")
c.Writer.Header().Set("Transfer-Encoding", "chunked") c.Writer.Header().Set("Transfer-Encoding", "chunked")
c.Writer.Header().Set("X-Accel-Buffering", "no") c.Writer.Header().Set("X-Accel-Buffering", "no")
// 设置标志,表示头部已经设置过
c.Set("event_stream_headers_set", true)
} }
func ClaudeData(c *gin.Context, resp dto.ClaudeResponse) error { func ClaudeData(c *gin.Context, resp dto.ClaudeResponse) error {