0

是否可以获取 SOAP Web 服务的结果,然后使用 AJAX 将其传递给使用 jQuery 的其他 SOAP Web 服务?

4

1 回答 1

0

从技术上讲,是的。

从 HTML 页面,通过 Ajax,可以调用 SOAP Web 服务,因为从技术角度来看:

  • SOAP 调用只是一个 HTTP POST 请求(可以这样做,您必须自己构建 SOAP 信封);和
  • SOAP 响应只是一个 XML 文件(因此可以被解析——尽管不像 Json 那样容易)。

但有一个警告:

它们(两个服务和页面)都必须在同一个域中,否则两个 Web 服务必须实现支持 CORS 请求。

查看这个答案,详细解释为什么 CORS 是个麻烦。这个问题(实际上是答案所在的问题)显示了一个可以调用 SOAP Web 服务的 HTML 示例。

在 ASP.NET Web 服务中启用 CORS:

您可以通过将以下行添加到源页面来通过 ASP.NET 添加标题:

Response.AppendHeader("Access-Control-Allow-Origin", "*");

更多详细信息:使用 CORS 跨域访问 ASP.NET 服务

于 2013-04-17T03:37:27.450 回答