El paquet curl d'R fa servir libcurl. Per tant, un proxy de l'entorn del procés pot aplicar-se encara que curl_fetch_memory no tingui cap argument de proxy a la crida:

Sys.setenv(ALL_PROXY = "http://proxy.example:8080")
result <- curl::curl_fetch_memory("https://www.example.org/")

Definiu l'entorn abans de preparar la petició. Feu servir un punt final complet, amb l'esquema i el port previstos, en lloc de suposar que un nom d'amfitrió nu implica el protocol correcte. Per a les peticions permeses a llocs públics, la llista de proxies HTTP proporciona candidats per a les URL de proxy HTTP dels exemples.

ALL_PROXY és un recurs alternatiu. Una variable d'entorn de proxy per al protocol de destinació té prioritat, i una omissió NO_PROXY coincident encara pot triar una connexió directa. Reviseu aquests valors quan sembli que canviar ALL_PROXY no té efecte.

Per a una ruta que pertany a un handle, configureu-la explícitament:

handle <- curl::new_handle(proxy = "http://proxy.example:8080")
result <- curl::curl_fetch_memory(
  "https://www.example.org/", handle = handle
)

L'opció de proxy del handle substitueix la selecció de proxy de l'entorn; la política d'omissió continua sent rellevant. Una opció de proxy explícitament buida desactiva l'ús de proxy fins i tot quan existeix una variable d'entorn de proxy.

Aquests paràmetres afecten el procés d'R en execució i les peticions de curl. Iniciar una altra sessió d'R o fer servir un paquet amb una altra implementació de xarxa pot produir una ruta diferent.

Articles relacionats