TIdHTTP के SOCKS मार्ग को उसके IOHandler से जोड़ें
TIdHTTP द्वारा उपयोग किए जाने वाले Indy 10 IOHandler से SOCKS सेटिंग्स जोड़ें, HTTP लक्ष्य को अनुरोध पर ही रखें।
Indy 10 में, TIdHTTP को उसके IOHandler के माध्यम से SOCKS प्रॉक्सी से जोड़ें। यह मानते हुए कि फ़ॉर्म के पास पहले से Http, SocketHandler और Socks घटक हैं:
Http.IOHandler := SocketHandler;
SocketHandler.TransparentProxy := Socks;
Socks.Host := 'proxy.example';
Socks.Port := 1080;
Socks.Version := svSocks5;
Page := Http.Get('http://example.com/');
यहाँ SocketHandler एक TIdIOHandlerStack है और Socks एक TIdSocksInfo है। अनुरोध से पहले घटकों को कॉन्फ़िगर करें। प्रॉक्सी क्रेडेंशियल सेट न होने वाले इस सार्वजनिक-साइट उदाहरण के लिए, SOCKS5 प्रॉक्सी सूची से एक SOCKS5 उम्मीदवार चुनें और नीचे बताए अनुसार किसी भी पुराने HTTP प्रॉक्सी मार्ग को साफ़ रखें। SOCKS संस्करण चुनना महत्वपूर्ण है क्योंकि डिफ़ॉल्ट svNoSocks है।
TIdHTTP के ProxyParams HTTP प्रॉक्सी कॉन्फ़िगर करते हैं। केवल-SOCKS मार्ग इसके बजाय TransparentProxy पर आता है। वहाँ HTTP प्रॉक्सी भी रखने से SOCKS कनेक्शन से परे एक और मध्यस्थ का वर्णन हो सकता है, इसलिए पुरानी HTTP प्रॉक्सी कॉन्फ़िगरेशन को तब साफ़ करें जब वह इच्छित पथ का हिस्सा न हो।
SOCKS5 उपयोगकर्ता नाम/पासवर्ड प्रमाणीकरण के लिए, Socks.Authentication को saUsernamePassword पर सेट करें और उसका उपयोगकर्ता नाम व पासवर्ड दें। SSL-सक्षम IOHandler को अपनी TLS भूमिका बनाए रखनी चाहिए; इसे साधारण हैंडलर से बदलने के बजाय इसके विरासत में मिले प्रॉक्सी इंटरफ़ेस से SOCKS जोड़ें।