در ویندوز، بستهٔ R curl تابع ie_get_proxy_for_url را ارائه می‌کند تا تصمیم سیستم برای یک مقصد مشخص به دست آید. برای سیاستی که یک نقطهٔ پایانی پروکسی پشتیبانی‌شده برمی‌گرداند:

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)

این کمک‌کننده می‌تواند پیکربندی خودکار یا کشف را ارزیابی کند. همین جست‌وجو می‌تواند زمان‌بر باشد، زیرا گرفتن و اجرای اسکریپت PAC ممکن است به کار شبکه نیاز داشته باشد.

نتیجهٔ NULL آن یعنی هیچ پروکسی انتخاب نشده است. نمونه آن نتیجه را به گزینهٔ پروکسی خالی نگاشت می‌کند تا libcurl پروکسی به‌ارث‌رسیده از محیط را جایگزین نکند.

نتیجه‌ای را که نگاشت پروتکل یا چند نامزد دارد بررسی کنید پیش از آنکه آن را یک نقطهٔ پایانی libcurl بدانید. فهرستی که یک انبار پیکربندی ویندوز برمی‌گرداند به‌طور خودکار یک URL پروکسی واحد معتبر نیست.

انتخاب را برای مقصدهای دیگر تکرار کنید وقتی سیاست می‌تواند آن‌ها را متفاوت مسیریابی کند. یک میزبان را ارزیابی نکنید و نتیجهٔ آن را مسیر جهانی HTTP و HTTPS ذخیره نکنید.

جست‌وجو یک مسیر را انتخاب می‌کند، نه هویت پروکسی. در صورت نیاز حساب و روش احراز هویت پشتیبانی‌شده را روی دسته پیکربندی کنید. نیازی به باز کردن فضای نام curl و جایگزینی سراسری new_handle نیست.

مقالات مرتبط