【问题标题】:Nodejs Soap api call returns "Unexpected root element of WSDL or include"Nodejs Soap api 调用返回“意外的 WSDL 根元素或包含”
【发布时间】:2016-09-05 05:33:37
【问题描述】:

我正在尝试使用 node-soap 模块访问 Web api,但每次我运行代码时都会收到以下错误“WSDL 的意外根元素或包含”

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);
});

【问题讨论】:

  • 我检查了那个问题,但无法理解任何内容,我也不知道给定的响应是从 Web 服务返回还是从 soap 模块返回?
  • 使用网络捕获工具like Fiddler or Wireshark a) 准确查看您发送的内容,b) 准确查看您收到的内容。

标签: node.js web-services soap


【解决方案1】:

“url”变量应该指向 WSDL,而不是 Web 服务本身。 按照惯例,WSDL 应该位于以下 URL: https://webservice.servcei.com/LoginXML?wsdl

请按照以下步骤操作:

  1. 检查您是否可以通过以下 URL 访问 WSDL:https://webservice.servcei.com/LoginXML?wsdl。如果没有,请找到 WSDL 文件的正确位置
  2. 检查服务主机是否在 WSDL xml 中指定。如果不使用 createClient 的“endpoint”参数来指向真正的 SOAP 服务。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-10-19
    • 1970-01-01
    • 1970-01-01
    • 2020-12-24
    • 1970-01-01
    • 2021-05-08
    相关资源
    最近更新 更多