Lua-cURL proxy opcije za preuzimanje datoteke
Povežite proxy krajnju točku s Lua-cURL easy handle-om i zadržite odredište i izlazni tok uz taj prijenos.
Lua-CURLv3 prihvaća libcurl opcije u tablici koja se koristi za izgradnju easy handle-a. Stavite proxy tamo:
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
Ovaj fragment pretpostavlja da je output datoteka za pisanje otvorena u binarnom načinu i u vlasništvu pozivatelja. Pozivatelj je zatvara nakon operacije. Zaštićeni poziv osigurava da se easy handle zatvori kada perform izazove pogrešku.
URL i dalje identificira datoteku. Proxy opcija odabire posrednika, a libcurl obrađuje podržani HTTP tunel za HTTPS odredište. Za dopušteno preuzimanje javne datoteke bez proxy računa, uzmite HTTP krajnju točku iz unosa na popisu HTTP proxyja. Ručno prepisivanje URL-a datoteke u proxy URL nije potrebno.
Eksplicitna opcija također čini izvor konfiguracije jasnim. libcurlovo rukovanje proxy okruženjem još je jedan ulaz; postavka proxyja u operacijskom sustavu preglednika nije univerzalna vrijednost koju svaka Lua mrežna biblioteka automatski dobiva.
Ako zahtjev treba slijediti upravljanu automatsku politiku, organizirajte podržano otkrivanje i proslijedite odabranu rutu klijentu. Tablica easy opcija pruža fiksnu rutu za ovaj prijenos.