使用JavaScript调用SOAP服务

时间:2011-01-07 03:28:46

标签: javascript jquery ajax web-services soap

正如标题所示,我正在试图弄清楚如何使用JavaScript调用soap服务。 SOAP服务正在我本地计算机上的Tomcat上运行。除了访问SOAP服务,我还可以非常轻松地下载/访问/读取WSDL。

由于这个问题,我已经连续几天撞到了墙上。在研究时,我遇到了一些简短的例子,但没有一个是全面的,详细说明如何从头到尾完成这个。那,或者我找到了解决方案,但它只适用于IE或Mozilla。

如何使用Javascript(在主要浏览器上)调用SOAP Web服务?谢谢!

(PS:我也在使用jquery。所以如果你想使用一些光滑的jquery工具来完成它,请随时提出建议)

1 个答案:

答案 0 :(得分:1)

SOAP只是XML所以应该可以这样做,但是我不知道任何用JS编写的现有SOAP客户端

更常见的方法可能是:

  1. JavaScript启动一个XHR对象,该对象使用GET / POST参数或JSON编码对象调用服务器端AJAX助手

  2. AJAX帮助程序根据需要调用数据库或Web服务,并将所需的数据对象输出为JSON或XML

  3. JavaScript解析响应主体(JSON或XML)并使用指定的数据采取必要的操作。

  4. 与尝试直接从JavaScript调用WebServices相比,这有几个优点:

    • SOAP XML可能非常复杂,这意味着要在客户端之间传输更多数据,这可能是一种缓慢的连接。特别是JSON,但是只有具有所需数据的XML模式在数据使用方面会更经济

    • 如果WebService需要任何类型的身份验证,则身份验证详细信息将向所有访问者公开。

    • Web服务通常用于标准化单独系统之间的通信,而不是用于同一应用程序/站点的前端组件和后端组件之间的通信。