Lua-CURLv3 godtek libcurl-val i tabellen som vert brukt til å byggje eit easy handle. Set 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 føreset at output er ei skrivbar fil opna i binærmodus og eigd av den som kallar. Den som kallar, lukkar ho etter operasjonen. Den verna kallinga sikrar at easy handle vert lukka når perform reiser ein feil.

URL-en identifiserer framleis fila. Proxyvalet vel mellomleddet, og libcurl handterer den støtta HTTP-tunnelen for HTTPS-målet. For ei tillaten nedlasting av ei offentleg fil utan proxykonto, ta HTTP-endepunktet frå ei oppføring i HTTP-proxylista. Det er ikkje nødvendig å skrive om fila sin URL til ein proxy-URL manuelt.

Eit eksplisitt val gjer òg kjelda til konfigurasjonen tydeleg. libcurl si handtering av proxy-miljøet er ei anna inngang; nettlesaren sitt proxyval i operativsystemet er ikkje ein universell verdi som kvart Lua-nettbibliotek får automatisk.

Viss førespurnaden skal følgje ein administrert automatisk policy, legg til rette for støtta oppdaging og send den valde ruta til klienten. Easy-valtabellen gir ei fast rute for denne overføringa.

Relaterte artiklar