/ / सैवन 2 क्लाइंट रूबी ऑन रेल में प्रतिक्रिया के लिए खाली सरणी लौटाता है - रूबी-ऑन-रेल, रूबी, साबुन, सैवन

रेलवे पर रूबी में प्रतिक्रिया के लिए सैवन 2 क्लाइंट रिक्त सरणी लौट रहा है - रूबी-ऑन-रेल, रूबी, साबुन, स्यूवन

मै इस्तेमाल कर रहा हूँ savon एकीकरण के लिए मणि paysbuy मेरे प्रोजेक्ट में जो रूबी ऑन रेल्स में बना है। यह है कि मैं savon ग्राहक कैसे बना रहा हूँ

client = Savon.client do
endpoint "https://www.paysbuy.com/receiveresponse/Result.aspx"
namespace "https://www.paysbuy.com/receiveresponse/ResultReg.aspx"
wsdl "https://demo.paysbuy.com/api_paynow/api_paynow.asmx"
end
logger.info"%%%%%%%%%%%%%%%%%#{client.operations}%%%%%%%%%%%%%%5555555"

लेकिन इसके लिए प्रतिक्रिया "client.operations"जैसा आ रहा है"[]"मुझे अपने पक्ष में कुछ भी गलत करने के लिए मदद की ज़रूरत है। किसी भी मदद के लिए अग्रिम धन्यवाद।

उत्तर:

उत्तर № 1 के लिए 1

मुझे लगता है कि आप Savon 2.x का उपयोग करते हैं? आपके कॉल का सिंटैक्स सही नहीं है। आपको एक ब्लॉक नहीं एक पैरामीटर सूची की आवश्यकता है।

आप WSDL को कम कॉलिंग कन्वेंशन के साथ WSDL भी मिलाते हैं। आप या तो निर्दिष्ट करें

wsdl:

या

endpoint: ...
namespace: ...

client.operations doesn "टी काम क्योंकि तुम नहीं किया" यह एक सही wsdl यूआरएल दे।

यह देखते हुए कि MS आधारित इंटरफ़ेस यह मान लेना सुरक्षित है कि आप पैरामीटर के साथ WSDL प्राप्त कर सकते हैं ?WSDL URL पर। इसे इस्तेमाल करे:

client = Savon.client(
wsdl: "https://demo.paysbuy.com/api_paynow/api_paynow.asmx?wsdl",
log: true,
log_level: debug,
pretty_print_xml: true
)

print client.operations

दुर्भाग्य से वह कॉल सावन का उपयोग करने में विफल रहता है। मुझे संदेह है कि यह "WSDL दस्तावेज़ की व्याख्या नहीं कर सकता है।

आप क्या कर सकते हैं अपनी सेवा का निरीक्षण करने और एक WSDL के बिना एक ग्राहक का निर्माण करने के लिए SoapUI का उपयोग करें।

client = Savon.client(
endpoint: "https://demo.paysbuy.com/api_paynow/api_paynow.asmx",
namespace: "http://tempuri.org",
log: true,
log_level: debug,
pretty_print_xml: true
)

मैंने डब्ल्यूएसडीएल को पढ़ा और कुछ ऐसा पाया, जो नामस्थान हो सकता है, लेकिन यह मुश्किल हो सकता है। कभी-कभी इसे सही अनुरोध को खोजने के लिए कुछ छेड़छाड़ की आवश्यकता होती है। जब आपको "काम करने का अनुरोध मिला SoapUI, आपको इसे काम करने के लिए रूबी कोड में अनुवाद करना होगा। हमेशा से मेरा दृष्टिकोण कम से कम था। पूछने के लिए स्वतंत्र महसूस करें कि आप उस बिंदु पर कब पहुँचे हैं।