Node HTTP ସର୍ଭର ସାଧାରଣ ପ୍ରକ୍ସି ଅନୁରୋଧକୁ ଏହାର request callback ମାଧ୍ୟମରେ ପରିଚାଳନା କରେ। CONNECT ଅନ୍ୟ ପଥ ନେଇଥାଏ: ସର୍ଭର ଅନୁରୋଧ, କ୍ଲାଏଣ୍ଟ ସକେଟ ଏବଂ head ବଫର ସହିତ connect ନିର୍ଗତ କରେ।

ସେହି ଘଟଣା HTTP ପାର୍ସିଂ ଏବଂ ଟନେଲ ମଧ୍ୟରେ ହସ୍ତାନ୍ତର। ଟନେଲ ହୋଇଥିବା ଟ୍ରାଫିକ ପାଇଁ ବ୍ୟବହାର ଜାରି ରଖିବା ପାଇଁ କୌଣସି ସାଧାରଣ ServerResponse ବସ୍ତୁ ନାହିଁ।

ଆର୍ଗୁମେଣ୍ଟଏହା କଣ ବହନ କରେ
reqCONNECT ଅନୁରୋଧ, ଏହାର ଗନ୍ତବ୍ୟ ଅଧିକାର ଏବଂ ହେଡର ସହିତ
clientSocketକ୍ଲାଏଣ୍ଟ ଆଡକୁ ଫେରିବା ସଂଯୋଗ
headNode ପୂର୍ବରୁ HTTP ହେଡର ପରେ ପଢ଼ିଥିବା ଟନେଲ ଡାଟା, ହୁଏତ ଖାଲି

ବାଇଟ ରିଲେ କରିବା ପୂର୍ବରୁ HTTP ନିର୍ଣ୍ଣୟ ସମ୍ପୂର୍ଣ୍ଣ କରନ୍ତୁ

ଅନୁରୋଧିତ ହୋଷ୍ଟ ଏବଂ ପୋର୍ଟ ଯାଞ୍ଚ କରନ୍ତୁ, ପ୍ରକ୍ସିର ପ୍ରବେଶ ଏବଂ ପ୍ରମାଣୀକରଣ ନୀତି ପ୍ରୟୋଗ କରନ୍ତୁ ଏବଂ ଅପଷ୍ଟ୍ରିମ ସଂଯୋଗ ସ୍ଥାପନ କରନ୍ତୁ। CONNECT service.example:443 ପରି ଏକ ଅଧିକାର ଚିହ୍ନଟ କରେ; ପ୍ରତ୍ୟେକ କୋଲନରେ ଅନ୍ଧଭାବେ ବିଭାଜନ କରିବା ପରିବର୍ତ୍ତେ IPv6 ଅଧିକାରକୁ ଧ୍ୟାନରେ ରଖି ସେହି ରୂପ ପାର୍ସ କରନ୍ତୁ।

ଟନେଲ ଗ୍ରହଣ ହେଲେ, ସଫଳ HTTP ପ୍ରତିକ୍ରିୟା ଏବଂ ତାହାକୁ ସମାପ୍ତ କରୁଥିବା ଖାଲି ଧାଡ଼ି ପଠାନ୍ତୁ। ତାପରେ କ୍ଲାଏଣ୍ଟ ସକେଟରୁ ଆସୁଥିବା ପରବର୍ତ୍ତୀ ବାଇଟ ସହିତ ଆଗକୁ ଯିବା ପୂର୍ବରୁ ଯେକୌଣସି head ବାଇଟ ଅପଷ୍ଟ୍ରିମ ପଠାନ୍ତୁ। ନୂଆ ଡାଟା ଶ୍ରୋତା ସଂଯୋଗ କରି ହ୍ୟାଣ୍ଡଲରକୁ ଅଲଗା ଭାବେ ଦିଆଯାଇଥିବା ବଫର ପୁନରୁଦ୍ଧାର କରାଯାଇପାରିବ ନାହିଁ।

Node ର ସରକାରୀ ଟନେଲିଂ ଉଦାହରଣ ଦୁଇଟି ସ୍ଟ୍ରିମ ଦିଶା ସଂଯୋଗ କରିବା ପୂର୍ବରୁ serverSocket.write(head) ସହିତ ସେହି ହସ୍ତାନ୍ତର କରେ। ଏହାର ଛୋଟ ଉଦାହରଣ ପରିବର୍ତ୍ତନ ଦେଖାଏ; ନିୟୋଜିତ ପ୍ରକ୍ସିକୁ ସୀମିତ ସଂଯୋଗ ପ୍ରୟାସ, ପ୍ରବେଶ ନିୟନ୍ତ୍ରଣ ଏବଂ ଜୀବନଚକ୍ର ପରିଚାଳନା ମଧ୍ୟ ଆବଶ୍ୟକ।

ସଫଳତା ପରେ, ବାଇଟଗୁଡ଼ିକ ସେବା ପ୍ରୋଟୋକଲର

ସଫଳ CONNECT ପ୍ରତିକ୍ରିୟା ସଂଯୋଗକୁ ବାଇଟ ସ୍ଟ୍ରିମରେ ପରିଣତ କରେ। ଲକ୍ଷ୍ୟ HTTPS ସାଇଟ ହେଲେ, ଏହାର TLS ବିନିମୟ ସେହି ସ୍ଟ୍ରିମ ଭିତରେ ଚାଲେ। କେବଳ ଟନେଲ କରିବା ପ୍ରକ୍ସିକୁ ପ୍ରତିସ୍ଥାପନ ୱେବସାଇଟ ପ୍ରମାଣପତ୍ର ଦେବାକୁ ଆବଶ୍ୟକ କରେ ନାହିଁ।

CONNECT ଗ୍ରହଣ କରିବା ପୂର୍ବରୁ, HTTP ତ୍ରୁଟି ପ୍ରତ୍ୟାଖ୍ୟାନର କାରଣ ବ୍ୟାଖ୍ୟା କରିପାରେ। ଗ୍ରହଣ ପରେ, ସ୍ଟ୍ରିମରେ HTTP 500 ଲେଖିବା ଟନେଲ ପ୍ରୋଟୋକଲରେ ବାଇଟ ଇଞ୍ଜେକ୍ଟ କରିବ। ବରଂ ପରବର୍ତ୍ତୀ ବିଫଳତାରେ ଉପଯୁକ୍ତ ସଂଯୋଗ ସମାପ୍ତ କରନ୍ତୁ କିମ୍ବା ନଷ୍ଟ କରନ୍ତୁ।

ଉଭୟ ଦିଶାକୁ ବ୍ୟାକପ୍ରେସର-ସଚେତନ ସ୍ଟ୍ରିମ ପରିଚାଳନା ସହିତ ସଂଯୋଗ କରନ୍ତୁ, ଏବଂ end, error ଏବଂ close ଘଟଣାଗୁଡ଼ିକ ସାଥୀକୁ କିପରି ସମାପ୍ତ କରେ ନିର୍ଣ୍ଣୟ କରନ୍ତୁ। ପ୍ରାରମ୍ଭିକ head ବଫରକୁ ସେହି ମାଲିକାନା ମଡେଲର ଅଂଶ ଭାବରେ ସଂରକ୍ଷଣ କରନ୍ତୁ; ଏହା ଆପ୍ଲିକେସନ ଡାଟା, ଫିଙ୍ଗିବାଯୋଗ୍ୟ ଅତିରିକ୍ତ HTTP ହେଡର ନୁହେଁ।

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