У Windows пакет 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. Спіс, вернуты сховішчам канфігурацыі Windows, не з'яўляецца аўтаматычна дапушчальным адзіным URL проксі.

Паўтарыце выбар для іншых пунктаў прызначэння, калі палітыка можа накіроўваць іх па-рознаму. Не ацэньвайце адзін хост і не захоўвайце яго вынік як універсальны маршрут HTTP і HTTPS.

Пошук выбірае маршрут, а не ідэнтычнасць проксі. Пры неабходнасці наладзьце ўліковы запіс і падтрыманы метад аўтэнтыфікацыі на дэскрыптары. Няма патрэбы адкрываць прастору імёнаў curl і замяняць new_handle глабальна.

Падобныя артыкулы