From c66b17583f6c125f2aaa401a9b35770dbb35a73b Mon Sep 17 00:00:00 2001 From: yusing Date: Thu, 20 Feb 2025 17:45:03 +0800 Subject: [PATCH] small refactor --- internal/net/gphttp/reverseproxy/reverse_proxy_mod.go | 2 +- internal/utils/io.go | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/internal/net/gphttp/reverseproxy/reverse_proxy_mod.go b/internal/net/gphttp/reverseproxy/reverse_proxy_mod.go index 221aa74..49988f0 100644 --- a/internal/net/gphttp/reverseproxy/reverse_proxy_mod.go +++ b/internal/net/gphttp/reverseproxy/reverse_proxy_mod.go @@ -410,7 +410,7 @@ func (p *ReverseProxy) handler(rw http.ResponseWriter, req *http.Request) { rw.WriteHeader(res.StatusCode) - err = U.CopyClose(U.NewContextWriter(ctx, rw), U.NewContextReader(ctx, res.Body)) // close now, instead of defer, to populate res.Trailer + err = U.CopyCloseWithContext(ctx, rw, res.Body) // close now, instead of defer, to populate res.Trailer if err != nil { if !errors.Is(err, context.Canceled) { p.errorHandler(rw, req, err, false) diff --git a/internal/utils/io.go b/internal/utils/io.go index 6a5b6cf..a470edb 100644 --- a/internal/utils/io.go +++ b/internal/utils/io.go @@ -223,3 +223,7 @@ func CopyClose(dst *ContextWriter, src *ContextReader) (err error) { } } } + +func CopyCloseWithContext(ctx context.Context, dst io.Writer, src io.Reader) (err error) { + return CopyClose(NewContextWriter(ctx, dst), NewContextReader(ctx, src)) +}