什么是WSDL?
2024-02-27
WSDL(网络服务描述语言,Web Services Description Language)是一门基于 XML 的语言,用于描述 Web Services 以及如何对它们进行访问。
WSDL 将用于描述网络服务的 XML 格式定义为一组端点,这组端点是对包含面向文档或面向过程信息的消息进行操作的。首先抽象地描述了这些操作和消息,然后将它们绑定到具体的网络协议和消息格式以定义端点。相关的具体端点被组合为抽象的端点(服务)。WSDL 可扩展来允许描述端点及其消息,而不必考虑使用哪些消息格式或网络协议来进行通信。这意味着使用 XML 模式来抽象地定义接口,然后将这些接口绑定到适用于该协议的具体表示。
WSDL 允许服务提供者指定 Web Service 的下列特征:
- Web Service 的名称和寻址信息
- 访问 Web Service 的公用操作时要使用的协议和编码样式
- 组成 Web Service 的接口的类型信息(例如,操作、参数和数据类型)
WSDL 文档允许开发者在因特网上将他们的应用程序公开为网络可访问服务。通过 UDDI 和 WSIL,其他应用程序可以发现 WSDL 文档并与它们进行绑定以执行事务或其他业务流程。
WSDL文档结构
WSDL 文档包括下述主要元素:
- Types:使用某类型系统(例如,XSD)的数据类型定义的容器。
- Message:正在通信的数据的抽象类型化定义。
- Operation:服务支持的操作的抽象描述。
- Port Type:一个或多个端点支持的一组抽象操作。
- Binding:特定端口类型的具体协议和数据格式规范。绑定通常为 SOAP,使用的编码和数据格式规则(也称为样式)通常为文字(这包括文档/文字,有时也包括 RPC/文字)。
- Port:定义为绑定与网络地址的组合的单个端点。
- Service:相关端点的集合。
SOAP、WSDL、UDDI的关系
Web Service 架构由如下几个关键规范构建:简单对象访问协议(SOAP)、统一描述、发现和集成(UDDI)、Web 服务描述语言(WSDL),它们的关系如图:
参考资料
有关 WSDL 规范的更多信息,请参阅 www.w3.org/TR/wsdl。
WSDL与WebService的关系