transport := http.DefaultTransport.(*http.Transport).Clone()
transport.Proxy = http.ProxyURL(proxyURL)
transport.OnProxyConnectResponse = func(
    _ context.Context,
    _ *url.URL,
    _ *http.Request,
    response *http.Response,
) error {
    observeConnect(response.StatusCode, response.Header.Get("X-Proxy-Region"))
    return nil
}
client := &http.Client{Transport: transport}

Uża context, net/http u net/url; l-asserzjoni tat-tip standard tassumi li dan it-transport jibqa' installat. proxyURL jiġi analizzat, u observeConnect irid ikun sikur fir-rigward tal-konkorrenza. Għall-provi HTTPS pubbliċi permessi, Lista ta' proxies HTTP tipprovdi kandidati għal dik il-proxy URL.

Il-callback jaħdem qabel ma CONNECT jiġi vverifikat għal 200 b'suċċess, għalhekk jista' josserva wkoll 407. Nil ikompli l-verifika normali u ma jaċċettax mina rrifjutata; żball ifalli t-talba.

X-Proxy-Region huwa eżempju definit mill-fornitur. Aqra l-istat u l-headers hawn u ħalli s-sjieda tal-body u s-socket ma' Transport, li mbagħad jamministra t-TLS tad-destinazzjoni.

Dan josserva t-twaqqif ta' mina ġdida, mhux kull talba. Konnessjoni użata mill-ġdid m'għandhiex rispons CONNECT ġdid, u r-rispons tas-sit web għandu headers separati.

Artikli relatati