ଫରୱାର୍ଡ ପ୍ରକ୍ସି ଦେଇ ଯାଉଥିବା ସାଧାରଣ HTTP ଅନୁରୋଧରେ Node ପ୍ରକ୍ସି ସହିତ ସଂଯୋଗ ହୁଏ ଏବଂ ଗନ୍ତବ୍ୟ URL କୁ ଅନୁରୋଧ ଧାଡ଼ିରେ ପଠାଏ। ତିନୋଟି ମୂଲ୍ୟ ସେହି ଏକ ଅନୁରୋଧକୁ ବର୍ଣ୍ଣନା କରେ:

ମୂଲ୍ୟଉଦାହରଣ
TCP ସଂଯୋଗ ଏଣ୍ଡପଏଣ୍ଟproxy.example:8080
ଅନୁରୋଧ ଲକ୍ଷ୍ୟhttp://example.com/news?q=proxy
Host ହେଡରexample.com

ଏହି Node 22 ଉଦାହରଣ ବିଭାଜନକୁ ସ୍ପଷ୍ଟ କରେ:

const http = require('node:http');
const destination = new URL('http://example.com/news?q=proxy');

const request = http.get({
  hostname: 'proxy.example',
  port: 8080,
  path: destination.href,
  headers: { Host: destination.host },
  signal: AbortSignal.timeout(15000),
}, (response) => {
  console.log(response.statusCode);
  response.on('error', console.error);
  response.resume();
});
request.on('error', console.error);

ଏଣ୍ଡପଏଣ୍ଟ ଏକ ପ୍ଲେସହୋଲଡର; ସାର୍ବଜନୀନ HTTP ପରୀକ୍ଷା ପାଇଁ HTTP ପ୍ରକ୍ସି ତାଲିକାରୁ ପ୍ରାର୍ଥୀ ବାଛନ୍ତୁ ଏବଂ ଏହାର ପ୍ରତିକ୍ରିୟା ଯାଞ୍ଚ କରନ୍ତୁ। ଉଦାହରଣ ସ୍ଥିତି ପ୍ରିଣ୍ଟ କରିବା ପରେ ପ୍ରତିକ୍ରିୟାକୁ ଖାଲି କରେ; ଏକ ଆପ୍ଲିକେସନ ଏହାର ବଦଳରେ ବଡି ବ୍ୟବହାର କରିପାରେ। ପ୍ରଶ୍ନ ଅନୁରୋଧ ଲକ୍ଷ୍ୟର ଅଂଶ ରହେ।

ସମ୍ପୂର୍ଣ୍ଣ URL ସେଠାରେ କାହିଁକି ରହେ

ମୂଳ ସର୍ଭର ସାଧାରଣତଃ /news?q=proxy ପରି ଲକ୍ଷ୍ୟ ପାଏ। ଫରୱାର୍ଡ ପ୍ରକ୍ସି ମଧ୍ୟ ଗନ୍ତବ୍ୟ ଆବଶ୍ୟକ କରେ, ତେଣୁ HTTP/1.1 ଲକ୍ଷ୍ୟକୁ ସମ୍ପୂର୍ଣ୍ଣ ରୂପରେ ପରିଭାଷିତ କରେ:

GET http://example.com/news?q=proxy HTTP/1.1
Host: example.com

HTTP/1.1 ନିୟମ ଅନୁସାରେ, ସମ୍ପୂର୍ଣ୍ଣ ରୂପ ପାଇଥିବା ପ୍ରକ୍ସି ଆଗକୁ ପଠାଇବା ସମୟରେ URI ର ଅଧିକାର ବ୍ୟବହାର କରେ ଏବଂ ଅସଙ୍ଗତ ପ୍ରାପ୍ତ Host କ୍ଷେତ୍ରକୁ ବଦଳାଏ। ସଙ୍ଗତ ଗନ୍ତବ୍ୟ Host ହେଡର ପଠାଇବା ତଥାପି ବାହାରକୁ ଯାଉଥିବା ଅନୁରୋଧକୁ ଅସ୍ପଷ୍ଟ ରହିବାକୁ ଦିଏ ନାହିଁ। Node ର ସଂଯୋଗ ହୋଷ୍ଟନାମ ମଧ୍ୟସ୍ଥ, ତେଣୁ ସେହି ସଂଯୋଗ ଠିକଣା ଉପରେ ନିର୍ଭର କରିବା ପରିବର୍ତ୍ତେ ହେଡରକୁ ଉଦ୍ଦେଶ୍ୟମୂଳକ ଭାବରେ ସେଟ କରନ୍ତୁ।

ଯଦି ପ୍ରମାଣୀକରଣ ଆବଶ୍ୟକ, ପ୍ରକ୍ସିର ପରିଚୟପତ୍ର ଏହାର ନିଜ ହପର। Node ର auth ଅନୁରୋଧ ବିକଳ୍ପ ସମ୍ପଦ ପାଇଁ Authorization ହେଡର ସୃଷ୍ଟି କରେ; ଏହା ସାଧାରଣ ପ୍ରକ୍ସି ଲଗଇନ ବିକଳ୍ପ ନୁହେଁ। ଆଦାନପ୍ରଦାନ ଅଧିକ ଜଟିଳ ହେଲେ ପ୍ରକ୍ସି ଆବଶ୍ୟକ କରୁଥିବା ସ୍କିମ ଏବଂ ଉପଯୁକ୍ତ ପ୍ରକ୍ସି କ୍ଲାଏଣ୍ଟ ବ୍ୟବହାର କରନ୍ତୁ।

HTTPS ଏକ ସୁଡଙ୍ଗ ଯୋଡେ

ଏହି ଉଦାହରଣ ସାଧାରଣ HTTP ଅଗ୍ରେଷଣ ଅନ୍ତର୍ଭୁକ୍ତ କରେ। ସାଧାରଣ HTTP ପ୍ରକ୍ସି ଦେଇ HTTPS ସଂଯୋଗ ପ୍ରଥମେ CONNECT example.com:443 ଅନୁରୋଧ କରେ, ତାପରେ ଗ୍ରହଣ କରାଯାଇଥିବା ସୁଡଙ୍ଗ ଭିତରେ ଗନ୍ତବ୍ୟକୁ TLS ଆରମ୍ଭ କରେ। ଉଦାହରଣର URL କୁ HTTPS କରିବା ସେହି ପର୍ଯ୍ୟାୟଗୁଡ଼ିକ ଯୋଡେ ନାହିଁ।

HTTPS କିମ୍ବା ମିଶ୍ରିତ କାର୍ଯ୍ୟଭାର ପାଇଁ ଆବଶ୍ୟକ ସୁଡଙ୍ଗ ସମର୍ଥନ ସହିତ ରକ୍ଷଣାବେକ୍ଷଣ କରାଯାଉଥିବା ପ୍ରକ୍ସି ଏଜେଣ୍ଟ କିମ୍ବା ଡିସପ୍ୟାଚର ବ୍ୟବହାର କରନ୍ତୁ। ସଙ୍ଗତ Node ସଂସ୍କରଣ ପାଇଁ ଏକ ବିକଳ୍ପ ହେଉଛି ProxyAgent ସହିତ Undici ର fetch। ସାଧାରଣ HTTP ଆଦାନପ୍ରଦାନ ନିଜେ ଯେତେବେଳେ ଆପଣଙ୍କୁ ନିୟନ୍ତ୍ରଣ କିମ୍ବା ବୁଝିବାକୁ ହେବ, ସେତେବେଳେ ଏହି ଛୋଟ ମୂଳ-କ୍ଲାଏଣ୍ଟ ଉଦାହରଣ ରଖନ୍ତୁ।

ସମ୍ପର୍କିତ ପ୍ରବନ୍ଧ