Got يختار وكلاء SOCKS عبر مفتاحي HTTP وHTTPS
عيّن SocksProxyAgent في مدخلات الوكيل الخاصة ببروتوكول الوجهة في Got، مع إبقاء مسار HTTP/2 منفصلًا.
كائن agent في Got مفهرس حسب بروتوكول الوجهة. لذلك ينتمي اتصال SOCKS الخاص بعنوان HTTPS إلى https، لا إلى مفتاح جديد باسم socks.
لتطبيق ESM قائم يستخدم Got وsocks-proxy-agent على مسار HTTP/1:
import got from 'got';
import {SocksProxyAgent} from 'socks-proxy-agent';
const agent = new SocksProxyAgent('socks5h://proxy.example:1080');
const body = await got('https://www.example.org/', {
http2: false,
agent: {
http: agent,
https: agent,
},
timeout: {request: 20000},
}).text();
توفّر قائمة وكلاء SOCKS5 مرشحين لعنوان الوكيل بلا حساب في المثال. ويمكن للوكيل نفسه معالجة مدخلي HTTP وHTTPS المعروضين. فهو ينشئ اتصال SOCKS، ثم ينفّذ مسار HTTPS مصافحة TLS مع الوجهة.
في هذا الوكيل يترك socks5h تحليل اسم مضيف الوجهة لوكيل SOCKS. أما socks5 فيختار التحليل المحلي بدلًا من ذلك. ومع ذلك يبقى اسم مضيف الوكيل نفسه بحاجة إلى الوصول من عملية Node.
خانة وكيل HTTP/2 في Got تتوقع واجهة مختلفة. لا تنسخ هذا الوكيل إلى agent.http2 وتفترض أنه يوفّر دعم وكيل HTTP/2.
أعد استخدام الوكيل المهيّأ لهذا الحمل ودمّره عند إيقاف مالكه. طابق إصدارات الحزم مع بيئة Node في التطبيق؛ هذا المثال يستخدم تصدير SocksProxyAgent المسمّى.