2016-05-10 14 views
7

Tôi đang cố truy cập api trên web bằng mô-đun nút-xà phòng, nhưng mỗi khi tôi chạy mã tôi nhận được lỗi sau "Phần tử gốc không mong đợi của WSDL hoặc bao gồm "Nodejs Gọi api của xà phòng trả về "Phần tử gốc không mong đợi của WSDL hoặc bao gồm"

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

[câu hỏi liên quan] (http://stackoverflow.com/questions/30139878/how-to-consume-wcf-in-node-js) – stuartd

+0

Tôi đã kiểm tra câu hỏi đó nhưng không thể hiểu bất kỳ điều gì, tôi cũng vậy không nhận thức được nếu đáp ứng đã cho được trả về từ dịch vụ web hoặc từ mô-đun xà phòng? –

+0

Sử dụng công cụ chụp mạng [như Fiddler hoặc Wireshark] (http://stackoverflow.com/questions/4263116/wireshark-vs-firebug-vs-fiddler-pros-and-cons) để a) xem chính xác những gì bạn đang gửi và b) xem chính xác những gì bạn đang nhận được. – stuartd

Trả lời

4

Biến" url "phải trỏ tới WSDL, không phải bản thân dịch vụ web. Theo quy ước WSDL nên được đặt trên URL sau: https://webservice.servcei.com/LoginXML?wsdl

Vì vậy, làm như sau:

  1. Kiểm tra xem bạn có thể truy cập vào WSDL vào sau URL: https://webservice.servcei.com/LoginXML?wsdl. Nếu không, hãy tìm đúng vị trí của tệp WSDL
  2. Kiểm tra máy chủ dịch vụ được chỉ định trong WSDL xml. Nếu không sử dụng tham số "điểm cuối" của createClient để trỏ đến dịch vụ SOAP thực.
Các vấn đề liên quan