diff options
| author | Stefan Majewsky <majewsky@gmx.net> | 2026-04-19 00:53:33 +0200 |
|---|---|---|
| committer | Stefan Majewsky <majewsky@gmx.net> | 2026-04-19 01:01:52 +0200 |
| commit | 587ac99d26a026c4441ce224f52105d2dbd3751b (patch) | |
| tree | 83b8d130d03c958e410870e9705204fc3661eb7d /request.go | |
| parent | 23429646da1d07d6a8632263a167f167d9971f35 (diff) | |
| download | go-schwift-587ac99d26a026c4441ce224f52105d2dbd3751b.tar.gz | |
run `go fix ./...`
Diffstat (limited to 'request.go')
| -rw-r--r-- | request.go | 26 |
1 files changed, 10 insertions, 16 deletions
@@ -21,8 +21,10 @@ package schwift import ( "context" "io" + "maps" "net/http" "net/url" + "slices" "strings" ) @@ -48,16 +50,10 @@ func cloneRequestOptions(orig *RequestOptions, additional Headers) *RequestOptio Values: make(url.Values), } if orig != nil { - for k, v := range orig.Headers { - result.Headers[k] = v - } - for k, v := range orig.Values { - result.Values[k] = v - } - } - for k, v := range additional { - result.Headers[k] = v + maps.Copy(result.Headers, orig.Headers) + maps.Copy(result.Values, orig.Values) } + maps.Copy(result.Headers, additional) return &result } @@ -140,14 +136,12 @@ func (r Request) Do(ctx context.Context, backend Backend) (*http.Response, error // check disabled -> return response unaltered return resp, nil } - for _, code := range r.ExpectStatusCodes { - if code == resp.StatusCode { - var err error - if r.DrainResponseBody || resp.StatusCode == http.StatusNoContent { - err = drainResponseBody(resp) - } - return resp, err + if slices.Contains(r.ExpectStatusCodes, resp.StatusCode) { + var err error + if r.DrainResponseBody || resp.StatusCode == http.StatusNoContent { + err = drainResponseBody(resp) } + return resp, err } // unexpected status code -> generate error |
