From fbb171f2370fdc1d7c6f3c77dad956f830a87719 Mon Sep 17 00:00:00 2001 From: Alexander Yastrebov Date: Tue, 1 Sep 2020 14:30:20 +0200 Subject: [PATCH] Drains tokeninfo response body to enable TCP connection reuse (#1511) See https://golang.org/pkg/net/http/#Client.Do for details Signed-off-by: Alexander Yastrebov --- filters/auth/authclient.go | 3 +++ 1 file changed, 3 insertions(+) diff --git a/filters/auth/authclient.go b/filters/auth/authclient.go index d5c39c084e..21fab8d86f 100644 --- a/filters/auth/authclient.go +++ b/filters/auth/authclient.go @@ -4,6 +4,7 @@ import ( "encoding/base64" "encoding/json" "fmt" + "io" "io/ioutil" "net/http" "net/url" @@ -80,6 +81,7 @@ func (ac *authClient) getTokenintrospect(token string, ctx filters.FilterContext defer rsp.Body.Close() if rsp.StatusCode != 200 { + io.Copy(ioutil.Discard, rsp.Body) return nil, errInvalidToken } @@ -110,6 +112,7 @@ func (ac *authClient) getTokeninfo(token string, ctx filters.FilterContext) (map defer rsp.Body.Close() if rsp.StatusCode != 200 { + io.Copy(ioutil.Discard, rsp.Body) return doc, errInvalidToken }