是否可以获取 SOAP Web 服务的结果,然后使用 AJAX 将其传递给使用 jQuery 的其他 SOAP Web 服务?
问问题
139 次
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 回答