Lua-CURLv3 prijíma možnosti libcurl v tabuľke používanej na vytvorenie easy handle. Umiestnite proxy tam:

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

Tento fragment predpokladá, že output je zapisovateľný súbor otvorený v binárnom režime a vlastnený volajúcim. Volajúci ho po operácii zatvorí. Chránené volanie zabezpečí, že easy handle sa zatvorí, keď perform vyvolá chybu.

URL stále identifikuje súbor. Možnosť proxy vyberá prostredníka a libcurl spracúva podporovaný tunel HTTP pre cieľ HTTPS. Pre povolené stiahnutie verejného súboru bez proxy účtu vezmite koncový bod HTTP zo záznamu v zozname HTTP proxy. Ručné prepisovanie URL súboru na URL proxy nie je potrebné.

Explicitná možnosť tiež objasňuje zdroj konfigurácie. Spracovanie proxy prostredia v libcurl je ďalší vstup; preferencia proxy v operačnom systéme prehliadača nie je univerzálna hodnota, ktorú by každá sieťová knižnica Lua získala automaticky.

Ak má požiadavka sledovať spravovanú automatickú politiku, zabezpečte podporované zisťovanie a odovzdajte vybranú trasu klientovi. Tabuľka možností easy poskytuje pre tento prenos pevnú trasu.

Súvisiace články