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}

Úsáid context, net/http agus net/url; glactar leis an dearbhú cineáil chaighdeánach go bhfanann an t-iompróir sin suiteáilte. Déantar proxyURL a pharsáil, agus caithfidh observeConnect a bheith sábháilte ó thaobh comhthráthachta. Le haghaidh tástálacha HTTPS poiblí ceadaithe, soláthraíonn Liosta seachfhreastalaithe HTTP iarrthóirí don URL seachfhreastalaí sin.

Ritheann an t-aisghlao sula seiceáiltear CONNECT do 200 rathúil, mar sin is féidir leis 407 a fheiceáil freisin. Leanann nil den ghnáthsheiceáil agus ní ghlacann sé le tollán diúltaithe; teipeann earráid ar an iarratas.

Is sampla é X-Proxy-Region atá sainithe ag an soláthróir. Léigh stádas agus ceanntásca anseo agus fág úinéireacht an chomhlachta agus an soicéid ag Transport, a láimhseálann TLS an chinn scríbe ansin.

Feiceann sé seo suiteáil tolláin nua, ní gach iarratas. Níl aon fhreagra CONNECT nua ag nasc athúsáidte, agus tá ceanntásca ar leith ag freagra an láithreáin ghréasáin.

Ailt ghaolmhara