Lua-CURLv3 прифаќа libcurl опции во табелата што се користи за градење на easy handle. Ставете го проксито таму:

local cURL = require "cURL"
local transfer = cURL.easy {
  url = "https://www.example.com/file.bin",
  proxy = "http://proxy.example:8080",
  writefunction = output,
}

local ok, failure = pcall(function()
  transfer:perform()
end)
transfer:close()
if not ok then error(failure) end

Овој фрагмент претпоставува дека output е датотека за пишување отворена во бинарен режим и во сопственост на повикувачот. Повикувачот ја затвора по операцијата. Заштитениот повик осигурава дека easy handle се затвора кога perform ќе предизвика грешка.

URL-то сè уште ја идентификува датотеката. Опцијата за прокси го избира посредникот, а libcurl го обработува поддржаниот HTTP тунел за одредиштето HTTPS. За дозволено преземање на јавна датотека без прокси сметка, земете ја HTTP крајната точка од запис во списокот со HTTP прокси. Не е потребно рачно препишување на URL-то на датотеката во прокси URL.

Експлицитната опција исто така го прави изворот на конфигурацијата јасен. Ракувањето со прокси околината од libcurl е друг влез; поставката за прокси во оперативниот систем на прелистувачот не е универзална вредност што ја добива секоја Lua мрежна библиотека автоматски.

Ако барањето треба да следи управувана автоматска политика, организирајте поддржано откривање и предадете ја избраната рута на клиентот. Табелата со easy опции обезбедува фиксна рута за овој пренос.

Поврзани статии