WSDL और सेवा कॉल के लिए PHP SoapClient प्रॉक्सी सेटिंग्स
User-Agent में क्रेडेंशियल डाले बिना WSDL लोडिंग और सेवा कॉल के लिए PHP SoapClient प्रॉक्सी विकल्प कॉन्फ़िगर करें।
दूरस्थ WSDL लोडिंग SoapClient कंस्ट्रक्टर के अंदर हो सकती है। उस पहली प्राप्ति से पहले प्रॉक्सी दें:
$client = new SoapClient('https://service.example.com/api?wsdl', [
'proxy_host' => '203.0.113.10',
'proxy_port' => 8080,
'proxy_login' => getenv('PROXY_USER'),
'proxy_password' => getenv('PROXY_PASSWORD'),
'connection_timeout' => 5,
'exceptions' => true,
]);वास्तविक WSDL, प्रॉक्सी होस्ट/पोर्ट और इच्छित क्रेडेंशियल स्रोत का उपयोग करें। होस्ट फ़ील्ड एक पता है, इसका पोर्ट अलग है।
| जब यह विफल हो | जाँचने के लिए अनुरोध या संचालन |
|---|---|
| क्लाइंट का निर्माण | WSDL प्राप्ति या दस्तावेज़ प्रसंस्करण। |
| आयातित दस्तावेज़/स्कीमा प्रसंस्करण | वास्तविक अतिरिक्त प्राप्ति URL। |
| SOAP विधि कॉल | WSDL में घोषित सेवा एंडपॉइंट, संभवतः किसी अन्य होस्ट पर। |
कैश किए गए WSDL का उपयोग करने वाला वर्कर उस अनुरोध को छोड़ सकता है जो किसी अन्य मशीन पर विफल होता है। कैश कॉन्फ़िगरेशन और वास्तविक विफल URL को तुलना के साथ रखें, केवल निर्माण की सफलता के आधार पर प्रॉक्सी न बदलें।
proxy_login/proxy_password प्रमाणित करते हैं मध्यस्थ को। गंतव्य login/password और SOAP-स्तर की सेवा प्रमाणीकरण अन्य परतों की सेवा करते हैं। User-Agent में खाते जैसे हेडर डालने के बजाय समर्पित विकल्पों का उपयोग करें; आवश्यक एप्लिकेशन हेडर समर्थित हेडर इंटरफ़ेस में होने चाहिए।
दर्ज करें संचालन, लक्ष्य और चुनौती जारी करने वाला पक्ष को, रहस्य हटाकर। connection_timeout कनेक्शन स्थापित होने को सीमित करता है, लंबे SOAP संचालन की पूरी अवधि को नहीं।