Pakej curl di R menggunakan libcurl. Oleh itu proksi daripada persekitaran proses boleh terpakai walaupun curl_fetch_memory tiada argumen proksi dalam panggilan:

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

Tetapkan persekitaran sebelum menyediakan permintaan. Gunakan titik akhir penuh, termasuk scheme dan port yang dimaksudkan, bukannya menganggap nama hos kosong bermaksud protokol yang betul. Untuk permintaan yang dibenarkan ke tapak awam, senarai proksi HTTP menyediakan calon untuk URL proksi HTTP contoh.

ALL_PROXY ialah laluan sandaran. Pemboleh ubah persekitaran proksi untuk protokol destinasi diutamakan, dan pintasan NO_PROXY yang sepadan masih boleh memilih sambungan langsung. Periksa nilai itu apabila menukar ALL_PROXY kelihatan tidak berkesan.

Untuk laluan yang dimiliki oleh satu handle, konfigurasikannya secara eksplisit:

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

Pilihan proksi handle mengatasi pemilihan proksi daripada persekitaran; dasar pintasan kekal relevan. Pilihan proksi yang kosong secara eksplisit menyahdayakan penggunaan proksi walaupun pemboleh ubah persekitaran proksi wujud.

Tetapan ini menjejaskan proses R yang sedang berjalan dan permintaan curl. Memulakan sesi R lain atau menggunakan pakej dengan pelaksanaan rangkaian lain boleh menghasilkan laluan berbeza.

Artikel berkaitan