Vurder Windows PAC-ruten for en R-nedlasting
Bruk curl-pakkens Windows-proxyoppslag for mål-URL-en, og bruk resultatet på håndtaket som utfører overføringen.
Et Windows PAC-skript kan velge en proxy etter destinasjonen. For en nedlasting gjort med R sin curl-pakke, spør Windows-hjelperen om ruten for den URL-en før overføringshåndtaket opprettes:
url <- "https://example.com/data.csv"
route <- curl::ie_get_proxy_for_url(url)
if (is.null(route)) route <- ""
handle <- curl::new_handle(proxy = route)
connection <- curl::curl(url, handle = handle)Les og lukk tilkoblingen gjennom applikasjonens vanlige tilkoblingslivssyklus. Utdraget fastsetter ruten for det curl-håndtaket; det konfigurerer ikke alle nettverkspakker i R-prosessen.
Hjelperen leser gjeldende Windows-proxykonfigurasjon. Når automatisk konfigurasjon er aktivert, kan evalueringen innebære å laste ned og kjøre PAC-skriptet, så selve oppslaget kan ta tid. Bruk den ekte mål-URL-en i stedet for et praktisk, irrelevant teststed.
Hjelperen returnerer NULL når ingen proxy er valgt. Den eksplisitt tomme proxystrengen i eksempelet ber libcurl om å utføre denne overføringen direkte, i stedet for å falle tilbake på en proxy-miljøvariabel som er etterlatt i økten.
En PAC-fil-URL er ikke det resulterende proxy-endepunktet. Å sende den skript-URL-en som håndtakets proxyverdi ber ikke libcurl om å evaluere skriptet.
Dette oppslaget returnerer en valgt proxy, ikke en fullstendig nettleser-ekvivalent failover-mekanisme for hver PAC-kandidat. Det leverer heller ikke autentiseringslegitimasjon. Hold håndteringen lokal hos Windows-klienten og curl-overføringen som faktisk trenger denne policyen.