Pakiet curl w R korzysta z libcurl. Proxy ze środowiska procesu może więc działać nawet wtedy, gdy curl_fetch_memory nie ma w wywołaniu żadnego argumentu proxy:

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

Ustaw środowisko przed przygotowaniem żądania. Używaj pełnego punktu końcowego, wraz z zamierzonym scheme i portem, zamiast zakładać, że sama nazwa hosta oznacza właściwy protokół. Dla dozwolonych żądań do publicznych witryn lista proxy HTTP dostarcza kandydatów do adresów URL proxy HTTP z przykładów.

ALL_PROXY jest rezerwową trasą. Zmienna środowiskowa proxy dla protokołu celu ma pierwszeństwo, a pasujące ominięcie NO_PROXY nadal może wybrać połączenie bezpośrednie. Sprawdź te wartości, gdy zmiana ALL_PROXY wydaje się nie mieć efektu.

Dla trasy należącej do jednego uchwytu skonfiguruj ją jawnie:

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

Opcja proxy uchwytu zastępuje wybór proxy ze środowiska; polityka omijania pozostaje istotna. Jawnie pusta opcja proxy wyłącza korzystanie z proxy nawet wtedy, gdy istnieje zmienna środowiskowa proxy.

Te ustawienia dotyczą działającego procesu R i żądań curl. Uruchomienie innej sesji R lub użycie pakietu z inną implementacją sieci może dać inną trasę.

Powiązane artykuły