En header som legges til http.Request.Header, beskriver destinasjonsforespørselen. Når HTTPS bruker en HTTP-proxy, utfører transporten først CONNECT. Destinasjonsforespørselens hoder er ikke et generelt konfigurasjons-API for den tidligere utvekslingen.

For en statisk header som proxyen din krever, konfigurer transportens ProxyConnectHeader:

transport := &http.Transport{
    Proxy: http.ProxyURL(proxyURL),
    ProxyConnectHeader: http.Header{
        "X-Proxy-Account": []string{"example-account"},
    },
}

Her er proxyURL den analyserte endepunkt-URL-en. Headeren er illustrativ og bare nyttig når proxyoperatøren definerer et slikt felt.

For en verdi som velges per proxy eller destinasjon, bruk GetProxyConnectHeader. Den dokumenterte tilbakeringingen mottar proxy-URL-en og CONNECT-målet. Når denne tilbakeringingen ikke er nil, ignoreres det statiske feltet ProxyConnectHeader.

Hold verdiene innenfor det tiltenkte omfanget. En kontomarkør bare for proxyen hører til proxyutvekslingen; en autorisasjonsverdi for et nettsted hører til destinasjonsforespørselen. Hvis en tilbakeringing ikke kan produsere den påkrevde håndtrykksverdien, returner feilen i stedet for å sende en annen konfigurert forespørsel i det stille.

Disse innstillingene tilpasser CONNECT-håndteringen. De finner ikke opp en egen autentiseringsprotokoll og endrer ikke proxy-tjenestens tilgangspolicy.

Relaterte artikler