Die Windows-PAC-Route für einen R-Download bewerten
Nutze die Windows-Proxyabfrage des curl-Pakets für die Ziel-URL und wende das Ergebnis auf das Handle an, das die Übertragung ausführt.
Ein Windows-PAC-Skript kann einen Proxy abhängig vom Ziel auswählen. Für einen Download mit dem curl-Paket von R frage vor dem Erstellen des Übertragungs-Handles dessen Windows-Helfer nach der Route für diese URL:
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)Lies die Verbindung und schließe sie über den normalen Verbindungslebenszyklus der Anwendung. Das Snippet legt die Route für dieses curl-Handle fest; es konfiguriert nicht jedes Netzwerkpaket im R-Prozess.
Der Helfer liest die aktuelle Windows-Proxykonfiguration. Ist die automatische Konfiguration aktiviert, kann die Auswertung das Herunterladen und Ausführen des PAC-Skripts umfassen, sodass die Abfrage selbst Zeit brauchen kann. Verwende die echte Ziel-URL statt einer bequemen, unabhängigen Testseite.
Der Helfer gibt NULL zurück, wenn kein Proxy ausgewählt ist. Der ausdrücklich leere Proxy-String im Beispiel weist libcurl an, diese Übertragung direkt auszuführen, statt auf eine in der Sitzung zurückgelassene Proxy-Umgebungsvariable zurückzufallen.
Eine PAC-Datei-URL ist nicht der resultierende Proxy-Endpunkt. Diese Skript-URL als Proxy-Wert des Handles zu übergeben, veranlasst libcurl nicht, das Skript auszuwerten.
Diese Abfrage liefert einen ausgewählten Proxy, keine vollständige browseräquivalente Failover-Engine für jeden PAC-Kandidaten. Sie liefert auch keine Anmeldedaten. Halte die Behandlung lokal beim Windows-Client und curl-Transfer, die diese Richtlinie tatsächlich brauchen.