Evaluează ruta PAC din Windows pentru o descărcare cu R
Folosește căutarea de proxy Windows a pachetului curl pentru URL-ul țintă și aplică rezultatul asupra handle-ului care face transferul.
Un script PAC din Windows poate alege un proxy în funcție de destinație. Pentru o descărcare făcută cu pachetul curl din R, întreabă asistentul său Windows despre ruta acelui URL înainte de a crea handle-ul de transfer:
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)Citește și închide conexiunea prin ciclul de viață normal al conexiunilor aplicației. Fragmentul stabilește ruta pentru acel handle curl; nu configurează fiecare pachet de rețea din procesul R.
Asistentul citește configurația curentă de proxy din Windows. Când configurația automată este activată, evaluarea poate implica descărcarea și rularea scriptului PAC, așa că însăși căutarea poate dura. Folosește URL-ul țintă real, nu un site de test convenabil și fără legătură.
Asistentul returnează NULL când nu este selectat niciun proxy. Șirul de proxy explicit gol din exemplu îi spune libcurl să facă acest transfer direct, în loc să revină la o variabilă de mediu de proxy lăsată în sesiune.
URL-ul unui fișier PAC nu este punctul final de proxy rezultat. Trecerea acelui URL de script ca valoare de proxy a handle-ului nu cere libcurl să evalueze scriptul.
Această căutare returnează un proxy selectat, nu un motor complet de comutare echivalent cu cel al browserului pentru fiecare candidat PAC. De asemenea, nu furnizează date de autentificare. Păstrează manipularea locală la clientul Windows și la transferul curl care au cu adevărat nevoie de această politică.