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

For en statisk header som proxyen din krever, konfigurer ProxyConnectHeader på transporten:

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 illustrerende 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 forespørselen til destinasjonen. Hvis en tilbakeringing ikke kan produsere den påkrevde håndtrykksverdien, returner feilen i stedet for å stille sende en annen konfigurert forespørsel.

Disse innstillingene tilpasser CONNECT-håndteringen. De finner ikke opp en egen autentiseringsprotokoll og endrer ikke tilgangspolicyen til proxytjenesten.

Relaterte artikler