تهيئة مقبض libcurl لتحليل اسم المضيف عبر SOCKS5
استخدم CURLPROXY_SOCKS5_HOSTNAME على مقبض النقل لتحليل الوجهة عبر الوسيط.
داخل تهيئة libcurl الموجودة في التطبيق ودورة حياة مقبض easy:
curl_easy_setopt(handle, CURLOPT_URL, "https://example.com/");
curl_easy_setopt(handle, CURLOPT_PROXY, "127.0.0.1:1080");
curl_easy_setopt(handle, CURLOPT_PROXYTYPE, CURLPROXY_SOCKS5_HOSTNAME);
curl_easy_setopt(handle, CURLOPT_NOPROXY, "");
curl_easy_setopt(handle, CURLOPT_CONNECTTIMEOUT, 5L);
curl_easy_setopt(handle, CURLOPT_TIMEOUT, 15L);CURLPROXY_SOCKS5_HOSTNAME يرسل اسم مضيف الوجهة عبر مسار SOCKS. CURLPROXY_SOCKS5 بل يحلّه على العميل، وقد يستخدم رؤية DNS لشبكة مختلفة. لا يحتاج عميل HTTP مكتوب بلغة C++ يستخدم libcurl إلى مصافحة SOCKS خاصة به لمجرد اختيار هذا المسار. من أجل نقطة نهاية عامة مسموح بها، قائمة وسطاء SOCKS5 تقدم مرشحي مضيف ومنفذ لتحل محل مستمع loopback التوضيحي.
قيمة CURLOPT_NOPROXY الفارغة تجعل اختبار الوسيط متعمدًا. حافظ على التجاوزات المقصودة عند تكييفه مع سياسة التطبيق العادية. تؤثر هذه الخيارات في هذا المقبض؛ لا ترثها المكتبات والمقابس الأخرى في العملية.
تحقق من قيم إرجاع ضبط الخيارات والنقل عبر معالجة الأخطاء في التطبيق. قد يحدث الفشل في الوصول إلى SOCKS أو التفاوض معه قبل أي استجابة HTTP، لذلك لا يوفر رمز حالة لموقع ويب.
تستخدم بيانات اعتماد الوسيط المطلوبة إعدادات مصادقة الوسيط المدعومة وآلية الأسرار، بشكل منفصل عن تسجيل الدخول إلى الموقع. أبقِ التحقق من TLS مفعّلًا: فتح اتصال عبر SOCKS لا يثبت هوية خدمة HTTPS.