SoapUI WSDL 文件
使用 WSDL 文件
WSDL 代表 Web 服务描述语言。它描述了 Web 服务并在分散或分布式环境中交换信息。它用于创建服务请求者和服务提供者之间的关系。它是一种基于XML的语言,用于描述基于SOAP的网络服务的功能.
在本节中,我们将学习如何在SoapUI中处理WSDL文件。
WSDL 的特点
WSDL 有以下特点:
它是一种基于 XML 的语言,用于定义如何在 SoapUI 中与基于 XML 的服务进行交互。
用于配置 SOAP 域中的节点。
用于描述网络服务的功能特性。
它用于在 Web 服务中设置定义的端点,其中包含一组输入、输出和故障消息。
WSDL 是一种基于 XML 的语言,并且与平台无关。
读作wiz-dull,写成W-S-D-L。
基于 Soap 和 XML 的 WSDL 模式:
WSDL 是构建 Web 应用程序的重要组件。它促进了基于多种语言构建的各种应用程序相互交互。 WSDL 用作 SOAP 和 XML 模式的组合,通过 Internet 在客户端和 Web 服务之间提供通信。要读取 WSDL 文件,客户端程序必须连接到 Web 服务并指定连接到 Web 服务器所需的操作。
WSDL 文档元素
Definitions: 它是包含一项或多项服务定义的 WSDL 文档的基本元素。
Types: Type 元素用于提供有关 WSDL 文档中使用的复杂数据类型的信息。
Message: 它包含用于客户端和 Web 服务器之间通信的抽象数据。它还定义了每个操作的数据元素。
portType: 包含一个或多个端点支持的抽象操作的集合。
Port: 用于将单个端点定义为绑定地址。
Services: 它是一组端点网络,用于指定绑定的端口地址。
Binding: 它指定操作和消息传递的具体协议和数据格式特征如何实现操作。
WSDL 文档的结构
以下代码片段显示了 WSDL 文档的结构。
<definitions>
<types>
Definition of types goes here.
</types>
<message>
Definition of a message goes here.
</message>
<portType>
<operation>
Definition of an operation goes here.
</operation>
</portType>
<binding>
Definition of a binding goes here.
</binding>
<service>
Definition of service goes here.
</service>
</definition>
我们还可以添加其他元素,例如扩展元素和服务元素,这些元素组合到单个 WSDL 文档中,可能定义多个 Web 服务。
以下是支持的 WSDL 的四个主要传输SoapUI 工具中的端点。
一种方式
请求和响应
征求响应
通知
单向: 单向服务只能接收单向消息。这意味着客户端可以通过使用单个输入元素执行操作来向服务器发送请求。
<wsdl:definitions .... >
<wsdl:portType name="getListCountriesSoap">
<wsdl:operation name = "getCountries ">
<wsdl:input message="tns:getCountriesSoapIn"/>
</wsdl:operation>
</wsdl:portType >
</wsdl:definitions>
请求和响应: 请求和响应服务用于向服务器发送请求并接收来自 Web 服务器的响应。它有两个操作元素。第一个输入元素之后是另一个元素,用于在 Web 服务中发送和接收请求和响应。
<wsdl:definitions ?.>
<wsdl:portType name="getListCountriesSoap">
<wsdl:operation name="getCountries">
<wsdl:input message="tns:getCountriesSoapIn"/>
<wsdl:output message="tns:getCountriesSoapOut"/>
</wsdl:operation>
</wsdl:portType>
</wsdl:definitions>
请求响应: 请求响应由涉及两个输入元素的操作组成。第一个输入元素包含对客户端的服务器请求,然后是客户端对服务器的响应的一个输入元素。
<wsdl:definitions ?.>
<wsdl:portType name="getListCountriesSoap">
<wsdl:operation name="getCountries" parameterOrder ="getListCountries">
<wsdl:output name="getCountries"? message="tns:getCountriesSoapOut"/>
<wsdl:input name="getCountries"? message="tns:getCountriesSoapIn"/>
<wsdl:fault name = " getCountries " message = "tns:getCountries"/>
</wsdl:operation>
</wsdl:portType>
</wsdl:definitions>
通知: 服务器向客户端计算机发送信息或消息。因此,通知由一个操作组成,该操作包括一个用于向客户端发送通知的输入元素。
<wsdl:definitions .... >
<wsdl:portType name="getListCountriesSoap" >
<wsdl:operation name = " getCountries ">
<wsdl:output name = " getCountries "? message = " tns:getCountriesSoapOut "/>
</wsdl:operation>
</wsdl:portType >
</wsdl:definitions>
创建 WSDL 文件
要创建 WSDL 文件,我们必须遵循以下步骤:
第一步: 转到 文件-> 新建 SOAP 项目。
第 2 步: 点击新建 SOAP 项目;它显示以下屏幕。
步骤3: 在初始 WSDL 文本框中键入以下 WSDL URL,如下所示。
https://www.jimpisoft.pt/Rentway_Reservations_WS/getCountries.asmx?WSDL
然后点击确定按钮。
它会自动设置项目名称。我们还可以在 WSDL URL 的初始化过程中更改项目名称。
第 4 步: SoapUI 将加载并解析指定的 WSDL URL
注意: 当我们处理一个项目时,SoapUI 会将 WSDL 文件保存到缓存中以避免不必要的请求。要在 SoapUI 中使用 WSDL 文件,我们需要将缓存定义的属性设置为 FALSE。
探索 WSDL
我们可以通过双击导航器打开编辑器来探索 WSDL 文件的服务。
概览选项卡用于显示WSDL文件的一般信息,如:
WSDL Definition
WSDL URL
Namespace
Binding
Soap Version
Style
Definition Parts
Operations
服务端点用于在 WSDL 文件中包含接口的端点。此外,我们可以为需要身份验证的 WSDL 服务指定多个端点。
WSDL 内容 提供了 WSDL 文件的详细信息。
