From f98f1b88608d37d15c3597054a21d15de63289ae Mon Sep 17 00:00:00 2001 From: Clint Ayres Date: Mon, 12 Feb 2024 09:05:09 +0000 Subject: [PATCH] pr feedback (eugene) --- relay/traffic/encoding.go | 3 +-- relay/traffic/handler.go | 2 ++ 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/relay/traffic/encoding.go b/relay/traffic/encoding.go index b8e0e06..e15016e 100644 --- a/relay/traffic/encoding.go +++ b/relay/traffic/encoding.go @@ -47,8 +47,7 @@ func GetContentEncoding(request *http.Request) (Encoding, error) { } } -// WrapReader checks if the request Content-Encoding or request query parameter indicates gzip compression. -// If so, it returns a gzip.Reader that decompresses the content. +// WrapReader returns a wrapped request.Body for the encoding provided. func WrapReader(request *http.Request, encoding Encoding) (io.ReadCloser, error) { if request.Body == nil { return nil, nil diff --git a/relay/traffic/handler.go b/relay/traffic/handler.go index 6bb3948..89acdf7 100644 --- a/relay/traffic/handler.go +++ b/relay/traffic/handler.go @@ -124,6 +124,8 @@ func (handler *Handler) HandleRequest(clientResponse http.ResponseWriter, client } } +// ensureBodyContentEncoding operates on the assumption that the downstream proxy target will be using the same +// encoding as what the relay received and ensures we proxy the content encoded correctly. func (handler *Handler) ensureBodyContentEncoding(clientRequest *http.Request, encoding Encoding) { switch encoding { case Unsupported: