Sous Windows, le paquet R curl expose ie_get_proxy_for_url pour obtenir la décision du système pour une destination donnée. Pour une stratégie qui renvoie un seul point de terminaison proxy pris en charge :

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)

L'assistant peut évaluer une configuration automatique ou une découverte. Cette recherche peut elle-même prendre du temps, car obtenir et exécuter le script PAC peut nécessiter un travail réseau.

Un résultat NULL signifie qu'aucun proxy n'a été sélectionné. L'exemple associe ce résultat à une option de proxy vide afin que libcurl ne remplace pas un proxy d'environnement hérité.

Inspectez un résultat contenant un mappage de protocole ou plusieurs candidats avant de le traiter comme un seul point de terminaison libcurl. Une liste renvoyée par un magasin de configuration Windows n'est pas automatiquement une URL de proxy unique valide.

Répétez la sélection pour d'autres destinations lorsque la stratégie peut les acheminer différemment. N'évaluez pas un seul hôte et n'enregistrez pas son résultat comme la route universelle HTTP et HTTPS.

La recherche sélectionne une route, pas une identité de proxy. Configurez le compte et la méthode d'authentification prise en charge sur le handle si nécessaire. Inutile de déverrouiller l'espace de noms de curl et de remplacer new_handle globalement.

Articles similaires