HttpURLConnection usingProxy उजागर करता है, पर परिणाम के साथ कनेक्शन का कार्यान्वयन और स्थिति भी चाहिए। यह कोई परीक्षण अनुरोध नहीं है।

OpenJDK 25 के HTTP हैंडलर में, स्पष्ट रूप से कॉन्फ़िगर किया गया HTTP प्रॉक्सी नेटवर्क कनेक्शन खुलने से पहले ही विधि को true लौटाने पर मजबूर कर सकता है:

import java.net.HttpURLConnection;
import java.net.InetSocketAddress;
import java.net.Proxy;
import java.net.URI;

var proxy = new Proxy(Proxy.Type.HTTP,
    new InetSocketAddress("proxy.example", 8080));
var url = URI.create("http://example.com/").toURL();
var connection = (HttpURLConnection) url.openConnection(proxy);
boolean proxyFlag = connection.usingProxy();

HTTP प्रॉक्सी सूची से कोई HTTP उम्मीदवार प्रॉक्सी प्रमाणीकरण के बिना अनुमत सार्वजनिक अनुरोध के लिए होस्ट और पोर्ट भर सकता है। openConnection ऑब्जेक्ट बनाता है। केवल वह ऑब्जेक्ट लौटाकर यह HTTP कनेक्शन स्थापित नहीं करता। इसलिए इस स्पष्ट-प्रॉक्सी मामले में फ़्लैग यह सिद्ध नहीं करता कि मध्यस्थ पहुँच योग्य है या अनुरोध स्वीकार करता है।

स्वचालित चयन में, हैंडलर के कनेक्ट होते समय मार्ग का चयन बाद में हो सकता है। शुरुआती false परिणाम को अंतिम मार्ग निर्णय नहीं मानना चाहिए। कनेक्शन के बाद, स्थिति को किसी भी अपवाद या प्रतिक्रिया के साथ समझें, विशेषकर जब प्रमाणीकरण या फ़ॉलबैक शामिल रहा हो।

सार्वजनिक विधि HttpURLConnection की है, जबकि ऊपर का व्यवहार नामित OpenJDK हैंडलर के लिए विशिष्ट है। किसी अन्य प्रदाता या JDK कार्यान्वयन को वही कनेक्शन-पूर्व विवरण दिखाना ज़रूरी नहीं है।

दर्ज करें कि प्रॉक्सी कैसे चुना गया और फ़्लैग कब पढ़ा गया। गंतव्य जो स्रोत पता देखता है उसे स्थापित करने के लिए, गंतव्य पक्ष से साक्ष्य रखें; बूलियन प्रॉक्सी मार्कर में उस एग्ज़िट पते के लिए कोई फ़ील्ड नहीं है।

संबंधित लेख