På Windows exponerar R curl-paketet ie_get_proxy_for_url för att hämta systemets beslut för en viss destination. För en princip som returnerar en enda stödd proxy-slutpunkt:

target <- 'https://data.example/report.csv'
selected <- curl::ie_get_proxy_for_url(target)
handle <- curl::new_handle(
  proxy = if (is.null(selected)) '' else selected
)
result <- curl::curl_fetch_memory(target, handle = handle)

Hjälparen kan utvärdera automatisk konfiguration eller upptäckt. Den uppslagningen kan själv ta tid, eftersom hämtning och körning av PAC-skriptet kan kräva nätverksarbete.

Dess NULL-resultat innebär att ingen proxy valdes. Exemplet mappar resultatet till ett tomt proxy-alternativ så att libcurl inte ersätter en ärvd miljöproxy.

Granska ett resultat som innehåller en protokollmappning eller flera kandidater innan du behandlar det som en enda libcurl-slutpunkt. En lista från ett Windows-konfigurationslager är inte automatiskt en giltig enskild proxy-URL.

Upprepa urvalet för andra destinationer när principen kan dirigera dem olika. Utvärdera inte en enda värd och spara inte resultatet som den universella HTTP- och HTTPS-rutten.

Uppslagningen väljer en rutt, inte en proxyidentitet. Konfigurera kontot och den stödda autentiseringsmetoden på handtaget vid behov. Det behövs ingen upplåsning av curls namnrymd och inget globalt utbyte av new_handle.

Relaterade artiklar