2013-03-25 10 views
6

में डब्ल्यूसीएफ साबुन वेब सेवा का उपभोग कैसे करें मैंने नोड मॉड्यूल wcf.js. का उपयोग कर नेट में उपलब्ध कई उदाहरणों की कोशिश की। लेकिन कोई उचित परिणाम नहीं मिला। मैं नीचे यूआरएलnode.js

https://webservice.kareo.com/services/soap/2.1/KareoServices.svc?wsdl

किसी भी एक है जो मुझे कोड की मदद से व्याख्या कर सकते हैं वास्तव में मददगार साबित होंगे उपयोग कर रहा हूँ। मैं जानना चाहता हूं कि node.js

धन्यवाद में wsdl का उपयोग कैसे करें।

+0

के संभावित डुप्लिकेट [Node.js: सोप एक्सएमएल वेब सेवा का उपभोग करने के लिए कैसे] (http://stackoverflow.com/प्रश्न/8655252/नोड-जेएस-कैसे-से-उपभोग-साबुन-एक्सएमएल-वेब-सेवा) –

उत्तर

0

तुम शायद में से एक का उपयोग करना चाहेंगे:

विस्फोट, वहाँ an existing question है।

+0

यू इस लिंक में मेरा कोड देख सकता है http://stackoverflow.com/questions/15562943/wcf-web- सर्विस-इन-नोड-जेएस लेकिन यह कुछ त्रुटि फेंकता है। क्या आप कृपया कोड में गलत क्या कर सकते हैं? – user87267867

0

मुझे लगता है कि एक विकल्प होगा:

  • उपयोग एक उपकरण ऐसे SoapUI के रूप में इनपुट एक्सएमएल संदेश के रूप में भेजने के लिए (बाद का) इनपुट और आउटपुट एक्सएमएल संदेशों
  • उपयोग node request रिकॉर्ड करने के लिए करने के लिए अनुरोध वेब सेवा (ध्यान दें कि मानक जावास्क्रिप्ट इस तरह के ejs या mustache के रूप में templating तंत्र तुम यहाँ मदद कर सकता है) और अंत में
  • उपयोग एक XML पार्सर जावास्क्रिप्ट के जवाब डेटा deserialize करने के लिए वस्तुओं

हां, यह एक बदसूरत और निम्न स्तर का दृष्टिकोण है लेकिन इसे बिना किसी समस्या के काम करना चाहिए

1

आपके पास कई विकल्प नहीं हैं।

  • नोड साबुन
  • खंगालना
  • soapjs

मैं करने की कोशिश की नोड साबुन निम्न कोड के साथ INR डालर दर प्राप्त करने के लिए:

तुम शायद में से एक का उपयोग करना चाहेंगे ।

app.get('/getcurr', function(req, res) { 
var soap = require('soap'); 
var args = {FromCurrency: 'USD', ToCurrency: 'INR'}; 
var url = "http://www.webservicex.net/CurrencyConvertor.asmx?WSDL"; 
soap.createClient(url, function(err, client) { 
    client.ConversionRate(args, function(err, result) { 
     console.log(result); 
    }); 
    }); 
}); 
1

कोड परियोजना एक neat sample जो wcf.js जिसके लिए एपीआई नए प्रतिमान जानने के लिए तो कोई ज़रूरत नहीं की तरह WCF कर रहे हैं का उपयोग करता है मिल गया है।

0

कृपया संक्षेप में wcf.js

पर एक नजर है आप इन चरणों का पालन कर सकते हैं:

  1. NPM WCF स्थापित करें।js

  2. इस तरह अपने कोड लिखें:

कोड

var Proxy = require('wcf.js').Proxy; 
var BasicHttpBinding = require('wcf.js').BasicHttpBinding; 

var binding = new BasicHttpBinding(); 

//Ensure the proxy variable created below has a working wsdl link that actually loads wsdl  
var proxy = new Proxy(binding, "http://YourHost/YourService.svc?wsdl"); 

/*Ensure your message below looks like a valid working SOAP UI request*/ 
var message = "<soapenv:Envelope xmlns:soapenv='http://schemas.xmlsoap.org/soap/envelope/' xmlns:sil='http://YourNamespace'>" + 
       "<soapenv:Header/>" + 
       "<soapenv:Body>" + 
       "<sil:YourMethod>" + 
       "<sil:YourParameter1>83015348-b9dc-41e5-afe2-85e19d3703f9</sil:YourParameter1>" + 
       "<sil:YourParameter2>IMUT</sil:YourParameter2>" + 
       "</sil:YourMethod>" + 
       "</soapenv:Body>" + 
       "</soapenv:Envelope>"; 
/*The message that you created above, ensure it works properly in SOAP UI rather copy a working request from SOAP UI*/ 

/*proxy.send's second argument is the soap action; you can find the soap action in your wsdl*/ 
proxy.send(message, "http://YourNamespace/IYourService/YourMethod", function (response, ctx) { 
    console.log(response); 
    /*Your response is in xml and which can either be used as it is of you can parse it to JSON etc.....*/ 
});