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 прадстаўляе фіксаваны маршрут для гэтай перадачы.

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