Lua-CURLv3 jaċċetta l-għażliet libcurl fit-tabella li tintuża biex jinbena easy handle. Poġġi l-proxy hemm:

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

Dan il-framment jassumi li output huwa fajl li jista' jinkiteb, miftuħ fil-modalità binarja u proprjetà tas-sejjieħ. Is-sejjieħ jagħlqu wara l-operazzjoni. Is-sejħa protetta tiżgura li l-easy handle jingħalaq meta perform iqajjem żball.

L-URL għadu jidentifika l-fajl. L-għażla tal-proxy tagħżel l-intermedjarju, u libcurl jimmaniġġja l-mina HTTP appoġġata għad-destinazzjoni HTTPS. Għal tniżżil permess ta' fajl pubbliku mingħajr kont tal-proxy, ħu l-punt tat-tmiem HTTP minn entrata fil-lista tal-proxy HTTP. M'hemmx bżonn li l-URL tal-fajl jinkiteb mill-ġdid manwalment bħala URL tal-proxy.

Għażla espliċita tagħmel ukoll is-sors tal-konfigurazzjoni ċar. Il-ġestjoni tal-ambjent tal-proxy minn libcurl hija input ieħor; il-preferenza tal-proxy tas-sistema operattiva tal-browser mhix valur universali li kull librerija tan-netwerk Lua tikseb awtomatikament.

Jekk it-talba għandha ssegwi politika awtomatika ġestita, organizza skoperta appoġġata u għaddi r-rotta magħżula lill-klijent. It-tabella tal-għażliet easy tipprovdi rotta fissa għal dan it-trasferiment.

Artikli relatati