Lua-CURLv3 sprejema možnosti libcurl v tabeli, ki se uporablja za gradnjo easy handle. Proxy postavite tja:

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

Ta del predpostavlja, da je output datoteka za pisanje, odprta v binarnem načinu in v lasti klicatelja. Klicatelj jo po opravilu zapre. Zaščiteni klic zagotavlja, da se easy handle zapre, ko perform sproži napako.

URL še vedno določa datoteko. Možnost proxy izbere posrednika, libcurl pa obravnava podprt tunel HTTP za cilj HTTPS. Za dovoljen prenos javne datoteke brez proxy računa vzemite končno točko HTTP iz vnosa na seznamu proxyjev HTTP. Ročno prepisovanje URL datoteke v URL proxyja ni potrebno.

Izrecna možnost tudi pojasni vir konfiguracije. Ravnanje libcurl s proxy okoljem je drug vnos; nastavitev proxyja v operacijskem sistemu brskalnika ni univerzalna vrednost, ki bi jo vsaka Lua omrežna knjižnica pridobila samodejno.

Če mora zahteva slediti upravljani samodejni politiki, uredite podprto odkrivanje in posredujte izbrano pot odjemalcu. Tabela možnosti easy zagotavlja fiksno pot za ta prenos.

Sorodni članki