AK
А циклы так только в хранимках и можно гонять
Size: a a a
AK
AK
ВС
ВС
AK
AK
ВС
AK
AK
L
АП
АП
L
AM
DL
RF
loc := resp.Header.Get("Location")
if loc == "" {
resp.closeBody()
return nil, uerr(fmt.Errorf("%d response missing Location header", resp.StatusCode))
}
u, err := req.URL.Parse(loc)
if err != nil {
resp.closeBody()
return nil, uerr(fmt.Errorf("failed to parse Location header %q: %v", loc, err))
}
RF
type MyTransport struct {
rt http.RoundTripper
}
func (t *MyTransport) RoundTrip(r *http.Request) (*http.Response, error) {
resp, err := t.rt.RoundTrip(r)
if err != nil {
return resp, err
}
if resp.StatusCode == 302 && resp.Header.Get("Location") == "" && resp.Header.Get("X-Redirect") != "" {
resp.Header.Set("Location", resp.Header.Get("X-Redirect"))
}
return resp, err
}
client.Transport = &MyTransport{tr: client.Transport}
н
type MyTransport struct {
rt http.RoundTripper
}
func (t *MyTransport) RoundTrip(r *http.Request) (*http.Response, error) {
resp, err := t.rt.RoundTrip(r)
if err != nil {
return resp, err
}
if resp.StatusCode == 302 && resp.Header.Get("Location") == "" && resp.Header.Get("X-Redirect") != "" {
resp.Header.Set("Location", resp.Header.Get("X-Redirect"))
}
return resp, err
}
client.Transport = &MyTransport{tr: client.Transport}