Lua-CURLv3 přijímá možnosti libcurl v tabulce používané k vytvoření easy handle. Umístěte 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 předpokládá, že output je zapisovatelný soubor otevřený v binárním režimu a vlastněný volajícím. Volající jej po operaci zavře. Chráněné volání zajistí, že se easy handle zavře, když perform vyvolá chybu.

URL stále identifikuje soubor. Možnost proxy vybírá prostředníka a libcurl zpracovává podporovaný tunel HTTP pro cíl HTTPS. Pro povolené stahování veřejného souboru bez proxy účtu vezměte koncový bod HTTP ze záznamu v seznamu HTTP proxy. Ruční přepis URL souboru na URL proxy není potřeba.

Explicitní možnost také objasňuje zdroj konfigurace. Zpracování proxy prostředí v libcurl je dalším vstupem; preference proxy v operačním systému prohlížeče není univerzální hodnota, kterou by každá síťová knihovna Lua získala automaticky.

Pokud má požadavek sledovat spravovanou automatickou politiku, zajistěte podporované zjišťování a předejte vybranou trasu klientovi. Tabulka možností easy poskytuje pro tento přenos pevnou trasu.

Související články