2016-05-10 4 views
7

Próbuję uzyskać dostęp do api sieci przy użyciu modułu węzeł-mydło, ale za każdym razem, gdy uruchamiam kod, otrzymuję następujący błąd "Nieoczekiwany element główny WSDL lub uwzględnij "Nodejs Soap api call zwraca "nieoczekiwany element główny WSDL lub dołączyć"

var soap = require('soap'); 
var xml2js = require('xml2js'); 

var url = 'https://webservice.servcei.com/LoginXML'; 
var params = { 
    Username:'webservice', 
    Password:'Test123' 
}; 
soap.createClient(url,params,function(err,client){ 
    console.log(err); 
}); 
+0

[podobne pytanie] (http://stackoverflow.com/questions/30139878/how-to-consume-wcf-in-node-js) – stuartd

+0

Sprawdziłem to pytanie, ale nie mógł zrozumieć niczego, również jestem nie wiadomo, czy dana odpowiedź jest zwracana z usługi sieciowej lub z modułu soap? –

+0

Użyj narzędzia do przechwytywania sieci [takiego jak Fiddler lub Wireshark] (http://stackoverflow.com/questions/4263116/wireshark-vs-firebug-vs-fiddler-pros-and-cons) do a) zobacz dokładnie, co wysyłasz i b) zobacz dokładnie, co otrzymujesz. – stuartd

Odpowiedz

4

Wskaźnik "" zmienna url powinien wskazywać WSDL, a nie sam serwis internetowy. Umownie WSDL powinien znajdować się na następującym adresem URL: https://webservice.servcei.com/LoginXML?wsdl

więc zrobić następujące:

  1. Sprawdź, czy można uzyskać dostęp do WSDL na następujący adres URL: https://webservice.servcei.com/LoginXML?wsdl. Jeśli nie, znajdź poprawną lokalizację pliku WSDL
  2. Sprawdź, czy host usługi jest określony w pliku WSDL xml. Jeśli nie, użyj parametru "punkt końcowy" obiektu createClient, aby wskazać rzeczywistą usługę SOAP.
Powiązane problemy