Tùy chọn proxy Lua-cURL để tải xuống tệp
Gắn một điểm cuối proxy vào easy handle Lua-cURL và giữ đích đến cùng luồng đầu ra với lần truyền đó.
Lua-CURLv3 nhận các tùy chọn libcurl trong bảng dùng để tạo easy handle. Đặt proxy ở đó:
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
Đoạn này giả định output là một tệp có thể ghi, được mở ở chế độ nhị phân và thuộc sở hữu của bên gọi. Bên gọi đóng tệp sau thao tác. Lời gọi được bảo vệ bảo đảm easy handle được đóng khi perform ném ra lỗi.
URL vẫn xác định tệp. Tùy chọn proxy chọn bên trung gian, và libcurl xử lý đường hầm HTTP được hỗ trợ cho đích HTTPS. Để tải xuống tệp công khai được phép mà không có tài khoản proxy, hãy lấy điểm cuối HTTP từ một mục trong danh sách proxy HTTP. Không cần viết lại URL của tệp thành URL proxy bằng tay.
Một tùy chọn rõ ràng cũng làm nguồn cấu hình trở nên rõ ràng. Việc libcurl xử lý môi trường proxy là một đầu vào khác; tùy chọn proxy của hệ điều hành trình duyệt không phải giá trị phổ quát mà mọi thư viện mạng Lua tự động có được.
Nếu yêu cầu phải tuân theo chính sách tự động được quản lý, hãy tổ chức khám phá được hỗ trợ và chuyển tuyến đã chọn cho máy khách. Bảng tùy chọn easy cung cấp một tuyến cố định cho lần truyền này.