ប្រើភ្នាក់ងារ SOCKS ជាមួយអតិថិជន HTTPS របស់ Node
ភ្ជាប់ socks-proxy-agent ទៅសំណើ HTTPS ស្នូលរបស់ Node និងរក្សាភាពខុសគ្នារវាងភ្នាក់ងារ Node និង dispatcher 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 សាធារណៈនេះ។ ការហៅត្រឡប់បង្ហូរការឆ្លើយតបបន្ទាប់ពីបោះពុម្ពស្ថានភាពរបស់វា; ប្រើប្រាស់តួនៅទីនោះប្រសិនបើកម្មវិធីត្រូវការ។ ប្រើភ្នាក់ងារឡើងវិញសម្រាប់ប្រតិបត្តិការដែលបានកំណត់ បន្ទាប់មកបំផ្លាញវានៅពេលគោលនយោបាយអតិថិជននោះត្រូវបានដកចេញ ហើយការងាររបស់វាបានបញ្ចប់។
ជ្រើសរើសកន្លែងដែលឈ្មោះគោលដៅត្រូវបានដោះស្រាយ
ក្នុងការគ្រប់គ្រង URL របស់ socks-proxy-agent, socks5h ទុកការដោះស្រាយឈ្មោះម៉ាស៊ីនគោលដៅទៅផ្លូវប្រូកស៊ី; socks5 ដោះស្រាយវាក្នុងតំបន់។ នេះសំខាន់នៅពេលឈ្មោះមានតែនៅលើបណ្តាញប្រូកស៊ី។
URL HTTPS រក្សាអត្តសញ្ញាណគេហទំព័រ។ ភ្នាក់ងារធ្វើការចរចា SOCKS មុនពេល Node ចាប់ផ្តើម TLS ទៅគេហទំព័រនោះ។
សម្រាប់សេវាដែលប្រើឈ្មោះអ្នកប្រើ/ពាក្យសម្ងាត់ ដាក់ព័ត៌មានសម្គាល់នៅក្នុង URL ប្រូកស៊ីដោយប្រើការអ៊ិនកូដធាតុ URI សម្រាប់តួអក្សរបម្រុង។ រក្សា URL ពេញលេញឱ្យផុតពីកំណត់ហេតុ។ ក្បាល Authorization របស់គោលដៅជារបស់គណនីគេហទំព័រ។
ភ្នាក់ងារនេះដំណើរការជាមួយ API សំណើ HTTP/HTTPS ស្នូលរបស់ Node។ fetch របស់ Node ប្រើចំណុចប្រទាក់ dispatcher ដូច្នេះកំណត់ការរួមបញ្ចូល SOCKS ដែលគាំទ្ររបស់អតិថិជននោះដោយឡែក។