]>
Commit | Line | Data |
---|---|---|
1 | package request | |
2 | ||
3 | import ( | |
4 | "io" | |
5 | "net/http" | |
6 | "net/url" | |
7 | ) | |
8 | ||
9 | func copyHTTPRequest(r *http.Request, body io.ReadCloser) *http.Request { | |
10 | req := new(http.Request) | |
11 | *req = *r | |
12 | req.URL = &url.URL{} | |
13 | *req.URL = *r.URL | |
14 | req.Body = body | |
15 | ||
16 | req.Header = http.Header{} | |
17 | for k, v := range r.Header { | |
18 | for _, vv := range v { | |
19 | req.Header.Add(k, vv) | |
20 | } | |
21 | } | |
22 | ||
23 | return req | |
24 | } |