Reactor Netty का proxy मेथड कॉन्फ़िगर किया गया क्लाइंट लौटाता है
proxy() से मिलने वाले HttpClient को ReactorClientHttpConnector में देने से पहले सँभालकर रखें; मूल क्लाइंट नहीं बदलता।
Reactor Netty में HttpClient की कॉन्फ़िगरेशन मेथड्स कॉन्फ़िगर किए गए क्लाइंट का संदर्भ लौटाती हैं। उस परिणाम को छोड़ देने से पहले वाला संदर्भ अपनी पुरानी सेटिंग्स के साथ ही रहता है।
यह कोड एक proxy कॉन्फ़िगरेशन बनाता है और फिर उसे खो देता है:
HttpClient client = HttpClient.create();
client.proxy(spec -> spec.type(ProxyProvider.Proxy.HTTP)
.host("proxy.example").port(8080));
इसके बजाय लौटाया गया संदर्भ रखें:
client = client.proxy(spec -> spec.type(ProxyProvider.Proxy.HTTP)
.host("proxy.example").port(8080));
WebClient webClient = WebClient.builder()
.clientConnector(new ReactorClientHttpConnector(client))
.build();
यहाँ टाइप Reactor Netty के HttpClient और ProxyProvider, तथा Spring के WebClient और ReactorClientHttpConnector हैं। HttpClient.create() से सीधे मेथड चेन करना भी लौटाई गई कॉन्फ़िगरेशन रखने का दूसरा तरीका है। अनुमत सार्वजनिक API अनुरोधों के लिए HTTP proxy सूची उदाहरण के होस्ट और पोर्ट के लिए उम्मीदवार देती है।
रेस्पॉन्स टाइमआउट या रीडायरेक्ट हैंडलिंग सेट करते समय भी यही जाँच लागू होती है। setter मूल ऑब्जेक्ट बदलता है यह मानने के बजाय मेथड का रिटर्न कॉन्ट्रैक्ट पढ़ें।
यह भी देखें कि कौन-सा संदर्भ connector तक पहुँचता है। connector बनाने के बाद लोकल वेरिएबल को फिर से असाइन करने से वह क्लाइंट नहीं बदलता जो connector को पहले ही मिल चुका है।