Lua-CURLv3 приема опции на libcurl в таблицата, използвана за създаване на easy handle. Поставете проксито там:

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

Този фрагмент предполага, че output е файл за запис, отворен в двоичен режим и притежаван от извикващия. Извикващият го затваря след операцията. Защитеното извикване гарантира, че easy handle се затваря, когато perform вдигне грешка.

URL адресът все още идентифицира файла. Опцията за прокси избира посредника, а libcurl обработва поддържания HTTP тунел за дестинацията HTTPS. За разрешено изтегляне на публичен файл без прокси акаунт вземете HTTP крайната точка от запис в списъка с HTTP прокси. Не е нужно ръчно пренаписване на URL адреса на файла към URL адрес на прокси.

Явната опция също прави източника на конфигурацията ясен. Обработката на прокси средата в libcurl е друг вход; предпочитанието за прокси на операционната система на браузъра не е универсална стойност, която всяка мрежова библиотека за Lua получава автоматично.

Ако заявката трябва да следва управлявана автоматична политика, организирайте поддържано откриване и предайте избрания маршрут на клиента. Таблицата с опции easy предоставя фиксиран маршрут за този трансфер.

Подобни статии