Lua-CURLv3 godtar libcurl-valg i tabellen som brukes til å bygge et easy handle. Sett proxyen der:

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

Denne biten forutsetter at output er en skrivbar fil åpnet i binærmodus og eid av den som kaller. Den som kaller, lukker den etter operasjonen. Det beskyttede kallet sikrer at easy handle lukkes når perform reiser en feil.

URL-en identifiserer fortsatt filen. Proxyvalget velger mellomleddet, og libcurl håndterer den støttede HTTP-tunnelen for HTTPS-målet. For en tillatt nedlasting av en offentlig fil uten proxykonto, ta HTTP-endepunktet fra en oppføring i HTTP-proxylisten. Det er ikke nødvendig å skrive om filens URL til en proxy-URL manuelt.

Et eksplisitt valg gjør også kilden til konfigurasjonen tydelig. libcurls håndtering av proxy-miljøet er en annen inngang; nettleserens proxyvalg i operativsystemet er ikke en universell verdi som hvert Lua-nettbibliotek får automatisk.

Hvis forespørselen skal følge en administrert automatisk policy, legg til rette for støttet oppdagelse og send den valgte ruten til klienten. Easy-valgtabellen gir en fast rute for denne overføringen.

Relaterte artikler