SOCKS ಸಾಮರ್ಥ್ಯವಿರುವ ಏಜೆಂಟ್ Node ನ ಕೋರ್ HTTPS ಕ್ಲೈಂಟ್‌ಗಾಗಿ ಗಮ್ಯಸ್ಥಾನ ಸಂಪರ್ಕವನ್ನು ಸ್ಥಾಪಿಸಬಹುದು. ಅಪ್ಲಿಕೇಶನ್‌ನಲ್ಲಿ 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);

ಈ ಸಾರ್ವಜನಿಕ HTTPS ವಿನಂತಿಗಾಗಿ ಉದಾಹರಣೆಯ ಎಂಡ್‌ಪಾಯಿಂಟ್ ಅನ್ನು SOCKS5 ಪ್ರಾಕ್ಸಿ ಪಟ್ಟಿಯಿಂದ ದೃಢೀಕರಿಸದ ಅಭ್ಯರ್ಥಿಯೊಂದಿಗೆ ಬದಲಾಯಿಸಿ. ಕಾಲ್‌ಬ್ಯಾಕ್ ಸ್ಥಿತಿಯನ್ನು ಮುದ್ರಿಸಿದ ನಂತರ ಪ್ರತಿಕ್ರಿಯೆಯನ್ನು ಖಾಲಿ ಮಾಡುತ್ತದೆ; ಅಪ್ಲಿಕೇಶನ್‌ಗೆ ಅಗತ್ಯವಿದ್ದರೆ ಅಲ್ಲಿಯೇ ದೇಹವನ್ನು ಬಳಸಿ. ಏಜೆಂಟ್ ಅನ್ನು ಅದರ ನಿಗದಿತ ಕಾರ್ಯಾಚರಣೆಗಳಿಗೆ ಮತ್ತೆ ಬಳಸಿ, ನಂತರ ಆ ಕ್ಲೈಂಟ್ ನೀತಿಯನ್ನು ಹಿಂತೆಗೆದುಕೊಂಡು ಅದರ ಕೆಲಸ ಮುಗಿದಾಗ ಅದನ್ನು ನಾಶಮಾಡಿ.

ಗಮ್ಯಸ್ಥಾನದ ಹೆಸರು ಎಲ್ಲಿ ಪರಿಹರಿಸಲ್ಪಡುತ್ತದೆ ಎಂಬುದನ್ನು ಆಯ್ಕೆಮಾಡಿ

socks-proxy-agent ನ URL ನಿರ್ವಹಣೆಯಲ್ಲಿ, socks5h ಗಮ್ಯಸ್ಥಾನದ ಹೋಸ್ಟ್‌ಹೆಸರು ಪರಿಹಾರವನ್ನು ಪ್ರಾಕ್ಸಿ ಮಾರ್ಗಕ್ಕೆ ಬಿಡುತ್ತದೆ; socks5 ಅದನ್ನು ಸ್ಥಳೀಯವಾಗಿ ಪರಿಹರಿಸುತ್ತದೆ. ಹೆಸರು ಪ್ರಾಕ್ಸಿ ನೆಟ್‌ವರ್ಕ್‌ನಲ್ಲಿ ಮಾತ್ರ ಲಭ್ಯವಿದ್ದಾಗ ಇದು ಮುಖ್ಯ.

HTTPS URL ವೆಬ್‌ಸೈಟ್‌ನ ಗುರುತನ್ನು ಉಳಿಸಿಕೊಳ್ಳುತ್ತದೆ. Node ಆ ಸೈಟ್‌ಗೆ TLS ಪ್ರಾರಂಭಿಸುವ ಮೊದಲು ಏಜೆಂಟ್ SOCKS ಮಾತುಕತೆ ನಡೆಸುತ್ತದೆ.

ಬಳಕೆದಾರಹೆಸರು/ಪಾಸ್‌ವರ್ಡ್ ಸೇವೆಗಾಗಿ, ಕಾಯ್ದಿರಿಸಿದ ಅಕ್ಷರಗಳಿಗೆ URI-ಘಟಕ ಎನ್‌ಕೋಡಿಂಗ್ ಬಳಸಿ ಪ್ರಾಕ್ಸಿ URL ನಲ್ಲಿ ರುಜುವಾತುಗಳನ್ನು ಇರಿಸಿ. ಪೂರ್ಣ URL ಅನ್ನು ಲಾಗ್‌ಗಳಿಂದ ಹೊರಗಿಡಿ. ಗಮ್ಯಸ್ಥಾನದ Authorization ಹೆಡರ್‌ಗಳು ವೆಬ್‌ಸೈಟ್‌ನ ಖಾತೆಗೆ ಸೇರಿವೆ.

ಈ ಏಜೆಂಟ್ Node ನ ಕೋರ್ HTTP/HTTPS ವಿನಂತಿ API ಗಳೊಂದಿಗೆ ಕೆಲಸ ಮಾಡುತ್ತದೆ. Node ನ fetch dispatcher ಇಂಟರ್‌ಫೇಸ್ ಬಳಸುತ್ತದೆ, ಆದ್ದರಿಂದ ಆ ಕ್ಲೈಂಟ್‌ನ ಬೆಂಬಲಿತ SOCKS ಸಂಯೋಜನೆಯನ್ನು ಪ್ರತ್ಯೇಕವಾಗಿ ಸಂರಚಿಸಿ.

ಸಂಬಂಧಿತ ಲೇಖನಗಳು