diff --git a/transport/http/client.go b/transport/http/client.go index 2d013ffad3e..1d74542d522 100644 --- a/transport/http/client.go +++ b/transport/http/client.go @@ -311,6 +311,13 @@ func (client *Client) do(req *http.Request) (*http.Response, error) { } resp, err := client.cc.Do(req) if err == nil { + t, ok := transport.FromClientContext(req.Context()) + if ok { + ht, ok := t.(*Transport) + if ok { + ht.replyHeader = headerCarrier(resp.Header) + } + } err = client.opts.errorDecoder(req.Context(), resp) } if done != nil {