X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/fd86245d5c68c0c82224030e98b7f26974dc1b5c..fe561d69b42d55191d6d1f01d4f3cdcf1fc9faaa:/sdk/go/arvados/client.go diff --git a/sdk/go/arvados/client.go b/sdk/go/arvados/client.go index ce2c5aea3d..cca9f9bf1b 100644 --- a/sdk/go/arvados/client.go +++ b/sdk/go/arvados/client.go @@ -106,15 +106,16 @@ func (c *Client) Do(req *http.Request) (*http.Response, error) { req.Header.Add("Authorization", "OAuth2 "+c.AuthToken) } - reqid, ok := c.context().Value(contextKeyRequestID).(string) - if !ok { - reqid = reqIDGen.Next() - } if req.Header.Get("X-Request-Id") == "" { + reqid, _ := c.context().Value(contextKeyRequestID).(string) + if reqid == "" { + reqid = reqIDGen.Next() + } if req.Header == nil { - req.Header = http.Header{} + req.Header = http.Header{"X-Request-Id": {reqid}} + } else { + req.Header.Set("X-Request-Id", reqid) } - req.Header.Set("X-Request-Id", reqid) } return c.httpClient().Do(req) }