के साथ एकीकृत करना मैं अपने सॉफ़्टवेयर को सिक्योरनेट गेटवे के साथ एकीकृत करने की कोशिश कर रहा हूं। उनके पास एक एसओएपी आधारित एपीआई है।सिक्योरनेट भुगतान गेटवे
मेरी समस्या यह है कि उनकी डब्लूएसडीएल फ़ाइल वास्तव में PHP के साथ काम नहीं करती है। विशेष रूप से उनकी डब्लूएसडीएल फ़ाइल wsdl:import
कथन के साथ कई फ़ाइलों में विभाजित होती है, और आयात स्थान http
है। उनके परीक्षण सर्वर http
और https
बंदरगाहों पर खुले हैं, इसलिए PHP WSDL फ़ाइल को पढ़ सकता है। उनके उत्पादन सर्वर पर केवल https
खुला है, लेकिन उनका स्थान ब्लॉक अभी भी http
का संदर्भ देता है, इसलिए PHP समय समाप्त हो गया है! अगर यह https
था तो यह ठीक काम करेगा।
उनकी सिफारिश WSDL फ़ाइल को उनके परीक्षण सर्वर से खींचाना था, लेकिन स्थान को ओवरराइड करना था। वे मुझे बताते हैं कि उनका टेस्ट सर्वर हमेशा ऊपर होना चाहिए, लेकिन मुझे अपने लेनदेन के लिए काम करने के लिए दो प्रणालियों पर निर्भर रहने में सहज महसूस नहीं होता है।
दूसरा विकल्प उनके एक्सएमएल पोस्ट एपीआई का उपयोग करना है ... लेकिन इसके साथ समस्या आपको सही क्रम में प्रत्येक फ़ील्ड (आवश्यक या नहीं) निर्दिष्ट करना है। सबसे बुरा हिस्सा यह है कि इस एपीआई के लिए त्रुटि संदेश बस Unknown Error.
है, इसलिए यह पता लगाना लगभग असंभव है कि मैं क्या खो रहा हूं।
मुझे तीसरे विकल्प की आवश्यकता है। साबुन अच्छी तरह से काम करता है, अगर मैं डब्लूएसडीएल फ़ाइल लोड कर सकता हूं (परीक्षण पर, उत्पादन नहीं कर सकता)। मुझे लगता है कि वे डब्ल्यूसीएफ का उपयोग कर रहे हैं, जो एक .NET चीज है जो मुझे विश्वास है। एक "? सरल WSDL" छंद "wsdl" विकल्प होना चाहिए, लेकिन डब्ल्यूसीएफ के उनके संस्करण पर यह नहीं है।
यहाँ उनके WSDL फ़ाइल (परीक्षण सर्वर) है: https://certify.securenet.com/API/Gateway.svc?wsdl
संपादित करें:
यहाँ प्रतिलिपि प्रस्तुत करने योग्य कोड है:
$client = new SoapClient("https://gateway.securenet.com/API/Gateway.svc?wsdl");
// Hangs and throws exception in construct
यह अंत बिंदु सेट:
वैकल्पिक हल यूआरएल है कि यह कर देगा तो जैसे अनुरोध करने के लिए, के पुनर्लेखन के लिए आधार SoapClient वर्ग का विस्तार करने के लिए है। समस्या यह है कि डब्लूएसडीएल फ़ाइल कई अन्य फाइलों का आयात करता है, और आयात यूआरएल http: // से शुरू होता है। उन्होंने डब्ल्यूएसडीएल को अपने विकास पर्यावरण से और सेटलोकेशन का उपयोग करने का सुझाव दिया, लेकिन मैं अपने देव पर्यावरण पर भरोसा नहीं करना चाहता हूं। – Luke