diff --git a/internal/handler/sendfile.go b/internal/handler/sendfile.go index 90a3e3e..a7ffe4a 100644 --- a/internal/handler/sendfile.go +++ b/internal/handler/sendfile.go @@ -132,14 +132,14 @@ func getSocketFd(conn net.Conn) (uintptr, error) { if err != nil { return 0, err } - defer file.Close() + defer func() { _ = file.Close() }() return file.Fd(), nil case *net.UnixConn: file, err := c.File() if err != nil { return 0, err } - defer file.Close() + defer func() { _ = file.Close() }() return file.Fd(), nil default: return 0, syscall.ENOTSUP @@ -193,5 +193,5 @@ func GetBuffer() []byte { // PutBuffer 放回缓冲区。 func PutBuffer(buf []byte) { - RealBufferPool.Put(buf) + RealBufferPool.Put(buf) //nolint:staticcheck // SA6002: 测试表明指针优化不明显,保持简洁 } diff --git a/internal/handler/static.go b/internal/handler/static.go index 98433e1..7365ce5 100644 --- a/internal/handler/static.go +++ b/internal/handler/static.go @@ -136,7 +136,7 @@ func (h *StaticHandler) serveFile(ctx *fasthttp.RequestCtx, filePath string, inf if h.useSendfile && info.Size() >= MinSendfileSize { file, err := os.Open(filePath) if err == nil { - defer file.Close() + defer func() { _ = file.Close() }() if err := SendFile(ctx, file, 0, info.Size()); err == nil { return } @@ -153,7 +153,7 @@ func (h *StaticHandler) serveFile(ctx *fasthttp.RequestCtx, filePath string, inf // 存入缓存(仅对小文件缓存) if h.fileCache != nil && info.Size() < 1024*1024 { // < 1MB - h.fileCache.Set(filePath, data, info.Size(), info.ModTime()) + _ = h.fileCache.Set(filePath, data, info.Size(), info.ModTime()) } ctx.Response.SetBody(data) diff --git a/internal/http3/adapter.go b/internal/http3/adapter.go index 5e293f9..14e0a1c 100644 --- a/internal/http3/adapter.go +++ b/internal/http3/adapter.go @@ -106,7 +106,7 @@ func (a *Adapter) convertRequest(r *http.Request, ctx *fasthttp.RequestCtx) { if err == nil { ctx.Request.SetBody(body) } - r.Body.Close() + _ = r.Body.Close() } // 设置远程地址 @@ -133,9 +133,9 @@ func (a *Adapter) convertResponse(ctx *fasthttp.RequestCtx, w http.ResponseWrite } // 复制响应头 - ctx.Response.Header.VisitAll(func(k, v []byte) { + for k, v := range ctx.Response.Header.All() { w.Header().Add(string(k), string(v)) - }) + } // 写入状态码 w.WriteHeader(statusCode) @@ -143,7 +143,7 @@ func (a *Adapter) convertResponse(ctx *fasthttp.RequestCtx, w http.ResponseWrite // 写入响应体 body := ctx.Response.Body() if len(body) > 0 { - w.Write(body) + _, _ = w.Write(body) } } @@ -238,9 +238,9 @@ func convertToHTTPRequest(ctx *fasthttp.RequestCtx) *http.Request { // 复制头部 r.Header = make(http.Header) - ctx.Request.Header.VisitAll(func(k, v []byte) { + for k, v := range ctx.Request.Header.All() { r.Header.Add(string(k), string(v)) - }) + } // 设置请求体 if len(ctx.PostBody()) > 0 { diff --git a/internal/http3/server.go b/internal/http3/server.go index 89815dd..75a47a5 100644 --- a/internal/http3/server.go +++ b/internal/http3/server.go @@ -138,7 +138,7 @@ func (s *Server) Start() error { // 创建 QUIC 监听器 s.listener, err = quic.ListenEarly(udpConn, s.tlsConfig, quicConfig) if err != nil { - udpConn.Close() + _ = udpConn.Close() return fmt.Errorf("failed to listen QUIC: %w", err) } @@ -219,7 +219,7 @@ func (s *Server) GracefulStop(timeout time.Duration) error { done := make(chan struct{}) go func() { - s.http3Server.Close() + _ = s.http3Server.Close() close(done) }() diff --git a/internal/middleware/compression/compression.go b/internal/middleware/compression/compression.go index cf29f5b..235dc9a 100644 --- a/internal/middleware/compression/compression.go +++ b/internal/middleware/compression/compression.go @@ -146,9 +146,10 @@ func (m *CompressionMiddleware) Process(next fasthttp.RequestHandler) fasthttp.R // 根据算法和客户端支持选择压缩方式 var useGzip, useBrotli bool - if m.algorithm == AlgorithmGzip { + switch m.algorithm { + case AlgorithmGzip: useGzip = strings.Contains(acceptEncoding, "gzip") - } else if m.algorithm == AlgorithmBrotli { + case AlgorithmBrotli: // brotli 或 both 模式 if strings.Contains(acceptEncoding, "br") { useBrotli = true @@ -232,8 +233,8 @@ func (m *CompressionMiddleware) compressGzip(data []byte) []byte { var buf bytes.Buffer w.Reset(&buf) - w.Write(data) - w.Close() + _, _ = w.Write(data) + _ = w.Close() return buf.Bytes() } @@ -245,8 +246,8 @@ func (m *CompressionMiddleware) compressBrotli(data []byte) []byte { var buf bytes.Buffer w.Reset(&buf) - w.Write(data) - w.Close() + _, _ = w.Write(data) + _ = w.Close() return buf.Bytes() } diff --git a/internal/server/pool.go b/internal/server/pool.go index 8083508..09709bc 100644 --- a/internal/server/pool.go +++ b/internal/server/pool.go @@ -263,7 +263,7 @@ type PoolStats struct { func (p *GoroutinePool) WrapHandler(handler fasthttp.RequestHandler) fasthttp.RequestHandler { return func(ctx *fasthttp.RequestCtx) { // 使用池执行处理器 - p.Submit(ctx, func(innerCtx *fasthttp.RequestCtx) { + _ = p.Submit(ctx, func(innerCtx *fasthttp.RequestCtx) { handler(ctx) }) } diff --git a/internal/server/server.go b/internal/server/server.go index fe0e9a3..b63e871 100644 --- a/internal/server/server.go +++ b/internal/server/server.go @@ -610,7 +610,7 @@ func (s *Server) Stop() error { // 关闭访问日志 if s.accessLogMiddleware != nil { - s.accessLogMiddleware.Close() + _ = s.accessLogMiddleware.Close() } // 关闭 TLS 管理器 @@ -653,7 +653,7 @@ func (s *Server) GracefulStop(timeout time.Duration) error { // 关闭访问日志 if s.accessLogMiddleware != nil { - s.accessLogMiddleware.Close() + _ = s.accessLogMiddleware.Close() } // 关闭 TLS 管理器 @@ -667,7 +667,7 @@ func (s *Server) GracefulStop(timeout time.Duration) error { done := make(chan struct{}) go func() { - s.fastServer.Shutdown() + _ = s.fastServer.Shutdown() close(done) }() diff --git a/internal/server/upgrade.go b/internal/server/upgrade.go index 3e71524..b01cf28 100644 --- a/internal/server/upgrade.go +++ b/internal/server/upgrade.go @@ -159,7 +159,7 @@ func (u *UpgradeManager) GetInheritedListeners() ([]net.Listener, error) { listener, err := net.FileListener(file) if err != nil { - file.Close() + _ = file.Close() continue } @@ -220,7 +220,7 @@ func (u *UpgradeManager) GracefulUpgrade(newBinary string) error { // 写入新 PID 到文件 if u.pidFile != "" { - os.WriteFile(u.pidFile, []byte(fmt.Sprintf("%d", newPid)), 0644) + _ = os.WriteFile(u.pidFile, []byte(fmt.Sprintf("%d", newPid)), 0644) } return nil @@ -277,7 +277,7 @@ func (u *UpgradeManager) WaitForShutdown(timeout time.Duration) error { } process, _ := os.FindProcess(u.oldPid) - process.Signal(syscall.SIGKILL) + _ = process.Signal(syscall.SIGKILL) return fmt.Errorf("old process did not shutdown gracefully") } @@ -315,7 +315,7 @@ func (u *UpgradeManager) SetupSignalHandlers(newBinary string) { go func() { for sig := range sigCh { if sig == syscall.SIGUSR2 { - u.GracefulUpgrade(newBinary) + _ = u.GracefulUpgrade(newBinary) } } }()