以 WKO 模式访问 XML Web 服务

只要 XML Web 服务发布其语法的 WSDL 说明,就可以访问和使用任何 XML Web 服务,即使该 XML Web 服务未使用 COM+ 甚至 Microsoft Windows 创建也如此。 只需使用 soap:wsdl=URL 名字对象创建组件的实例,其中 URL 是要访问的 XML Web 服务的 WSDL 说明的 URL。 这是访问 XML Web 服务的已知对象 (WKO) 模式。

无需任何特殊注意事项即可调用对象的方法。 XML Web 服务通过 SOAP 查询进行访问,响应以透明方式解释。

组件服务管理工具

不应用。

Visual Basic

以下 Microsoft Visual Basic 代码片段演示了在 WKO 模式下使用 XML Web 服务。

Set Obj = GetObject("soap:wsdl=https://servername/vroot/progID.soap?WSDL")
output = Obj.Method(input)

此代码片段演示了 COM+ 应用程序的组件的使用(已公开为 XML Web 服务),服务器名称是提供 XML Web 服务的服务器的完全限定域名;vroot 是公开 XML Web 服务的 IIS 虚拟根目录;progID 是要使用的组件的 ProgID。

C/C++

以下代码片段演示了在 WKO 模式下使用 XML Web 服务。

HRESULT hr = CoGetObject(
     L"soap:wsdl=https://servername/vroot/progID.soap?WSDL",
     pBindOptions,
     IID_IUnknown,
     (void**)&pIUnknown);
if (FAILED(hr)) throw(hr); 

此代码片段演示了 COM+ 应用程序的组件的使用(已公开为 XML Web 服务),服务器名称是提供 XML Web 服务的服务器的完全限定域名;vroot 是公开 XML Web 服务的 IIS 虚拟根目录;progID 是要使用的组件的 ProgID。

注解

在 WKO 模式下首次访问 XML Web 服务时,COM+ 会生成一个代理客户端并在后台进行编译。 与 CAO 模式相比,此运行时生成和 WKO 模式下缺少持久性连接会导致性能明显降低。

以 CAO 模式访问 XML Web 服务

COM+ SOAP 服务概述

创建 XML Web 服务

保护 XML Web 服务