خيارات وكيل Lua-cURL لتنزيل ملف
اربط نقطة نهاية وكيل بمقبض easy في Lua-cURL واحتفظ بالوجهة وتدفق الإخراج مع ذلك النقل.
يقبل Lua-CURLv3 خيارات libcurl في الجدول المستخدم لإنشاء مقبض easy. ضع الوكيل هناك:
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 عندما يرفع perform خطأ.
لا يزال URL يحدد الملف. يختار خيار الوكيل الوسيط، ويتولى libcurl نفق HTTP المدعوم لوجهة HTTPS. لتنزيل ملف عام مسموح به دون حساب وكيل، خذ نقطة نهاية HTTP من مدخل في قائمة وكلاء HTTP. لا حاجة إلى إعادة كتابة URL الملف يدويًا إلى URL وكيل.
كما أن الخيار الصريح يجعل مصدر التكوين واضحًا. معالجة libcurl لبيئة الوكيل مدخل آخر؛ وتفضيل الوكيل في نظام تشغيل المتصفح ليس قيمة عالمية تحصل عليها كل مكتبة شبكات Lua تلقائيًا.
إذا كان يجب أن يتبع الطلب سياسة تلقائية مُدارة، فرتّب اكتشافًا مدعومًا ومرّر المسار المختار إلى العميل. يوفر جدول خيارات easy مسارًا ثابتًا لهذا النقل.