استخدم وكيل SOCKS مع عميل HTTPS في Node
اربط socks-proxy-agent بطلب HTTPS أساسي في Node وحافظ على التمييز بين وكيل Node وموزّع fetch.
يمكن لوكيل يدعم SOCKS إنشاء اتصال الوجهة لعميل HTTPS الأساسي في Node. مع توفر socks-proxy-agent في التطبيق:
const https = require('node:https');
const { SocksProxyAgent } = require('socks-proxy-agent');
const agent = new SocksProxyAgent('socks5h://proxy.example:1080');
const request = https.get('https://www.example.com/', {
agent,
signal: AbortSignal.timeout(15000),
}, (response) => {
console.log(response.statusCode);
response.on('error', console.error);
response.resume();
});
request.on('error', console.error);
استبدل نقطة النهاية في المثال بمرشح غير موثّق من قائمة وكلاء SOCKS5 لهذا الطلب العام عبر HTTPS. تُفرغ دالة الاستجابة المحتوى بعد طباعة رمز الحالة؛ استهلك الجسم هناك إذا احتاج التطبيق إليه. أعد استخدام الوكيل في العمليات المخصصة له، ثم دمّره عندما تُلغى سياسة ذلك العميل ويكون عمله قد انتهى.
اختر مكان تحليل اسم الوجهة
في معالجة socks-proxy-agent لعناوين URL، يترك socks5h تحليل اسم مضيف الوجهة لمسار الوكيل؛ أما socks5 فيحلّه محليًا. يهم هذا عندما يكون الاسم متاحًا فقط على شبكة الوكيل.
يحافظ عنوان URL لـ HTTPS على هوية الموقع. ينفّذ الوكيل تفاوض SOCKS قبل أن يبدأ Node اتصال TLS بذلك الموقع.
لخدمة تتطلب اسم مستخدم وكلمة مرور، ضع بيانات الاعتماد في عنوان URL للوكيل باستخدام ترميز مكوّن URI للأحرف المحجوزة. أبقِ عنوان URL الكامل خارج السجلات. تخص رؤوس Authorization الخاصة بالوجهة حساب الموقع.
يعمل هذا الوكيل مع واجهات طلب HTTP/HTTPS الأساسية في Node. يستخدم fetch في Node واجهة موزّع، لذا اضبط تكامل SOCKS المدعوم في ذلك العميل بشكل منفصل.