SOCKS प्रॉक्सीमा जडान गरेपछि Node.js EPIPE
SOCKS एन्डपोइन्टमा जडान गरेपछि Node को EPIPE व्याख्या गर्नुहोस् र आवश्यक handshake पूरा भयो कि भएन जाँच गर्नुहोस्।
Node सकेटको connect घटनाले TCP प्रॉक्सीसम्म पुगेको बताउँछ। यसले प्रॉक्सीले गन्तव्यसँग जडान खोलेको बताउँदैन।
SOCKS5 सर्भरले एप्लिकेसन ट्राफिक अघि विधि वार्ता, छानिएको प्रमाणीकरण र गन्तव्य अनुरोधको अपेक्षा गर्छ। तुरुन्तै HTTP अनुरोध पठाउँदा सर्भरले जडान बन्द गर्न सक्छ। पछिको लेखनले EPIPE उत्पन्न गर्न सक्छ।
मात्र EPIPE ले handshake छुटेको प्रमाण दिँदैन। यसले अर्को पक्षले त्यो सञ्चार स्वीकार नगर्ने जडानमा लेखिएको जनाउँछ। अर्को पक्षले किन बन्द गर्यो भन्ने थाहा पाउन अघिल्ला घटना र प्रोटोकल उत्तरहरू पढ्नुहोस्।
पूर्ण SOCKS आदानप्रदान लागू गर्ने कनेक्टर प्रयोग गर्नुहोस्। Node को मुख्य HTTPS क्लाइन्टका लागि, SOCKS-जानकार एजेन्ट ले गन्तव्यको TLS अघि त्यो वार्ता गर्न सक्छ। यदि तपाईं आफैं आदानप्रदान लागू गर्नुहुन्छ भने प्रोटोकलका फिल्ड लम्बाइअनुसार डेटा सङ्कलन गर्नुहोस्। एउटा data घटनामा एउटा पूर्ण उत्तर हुन्छ भन्ने ग्यारेन्टी छैन, र फर्काइएको bound ठेगाना एउटा हार्डकोड गरिएको बाइट स्ट्रिङसँग मिल्नैपर्ने हुन्न।
अपरेसन असफल हुनुअघि त्रुटि व्यवस्थापन दर्ता गर्नुहोस्, त्रुटि प्रतिवेदनमा जडानको चरण राख्नुहोस्, र वार्ता सफल भएपछि मात्र गन्तव्य प्रोटोकल पठाउनुहोस्। त्रुटि समात्नुले नियन्त्रण नगरिएको घटना रोक्छ; यसले अमान्य आदानप्रदान सुधार्दैन।