ALL_PROXY est une solution de repli pour les requêtes curl de R
Définissez une URL de proxy complète dans le processus R, puis tenez compte des variables propres au protocole, des règles de contournement et des options explicites du handle curl.
Le paquet curl de R s'appuie sur libcurl. Un proxy issu de l'environnement du processus peut donc s'appliquer même lorsque curl_fetch_memory n'a aucun argument de proxy dans l'appel :
Sys.setenv(ALL_PROXY = "http://proxy.example:8080")
result <- curl::curl_fetch_memory("https://www.example.org/")
Définissez l'environnement avant de préparer la requête. Utilisez un point de terminaison complet, avec le schéma et le port voulus, plutôt que de supposer qu'un simple nom d'hôte implique le bon protocole. Pour les requêtes autorisées vers des sites publics, la liste de proxys HTTP fournit des candidats pour les URL de proxy HTTP des exemples.
ALL_PROXY est une solution de repli. Une variable d'environnement de proxy pour le protocole de la destination est prioritaire, et un contournement NO_PROXY correspondant peut encore choisir une connexion directe. Examinez ces valeurs lorsque modifier ALL_PROXY semble sans effet.
Pour un itinéraire propre à un handle, configurez-le explicitement :
handle <- curl::new_handle(proxy = "http://proxy.example:8080")
result <- curl::curl_fetch_memory(
"https://www.example.org/", handle = handle
)
L'option de proxy du handle prime sur la sélection par l'environnement ; la politique de contournement reste pertinente. Une option de proxy explicitement vide désactive l'usage d'un proxy même lorsqu'une variable d'environnement de proxy existe.
Ces réglages concernent le processus R en cours et les requêtes de curl. Démarrer une autre session R ou utiliser un paquet doté d'une autre implémentation réseau peut produire un itinéraire différent.