Параметры проксі Lua-cURL для загрузкі файла
Падключыце канечны пункт проксі да easy handle Lua-cURL і захавайце прызначэнне і паток вываду пры гэтай перадачы.
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 прадстаўляе фіксаваны маршрут для гэтай перадачы.