WSDL阅读笔记
一、WSDL简介
W3school 上的定义:WSDL(网络服务描述语言,Web Services Description Language)是一门基于 XML 的语言,用于描述 Web Services 以及如何对它们进行访问。这种文档可描述某个 Web service。它可规定服务的位置,以及此服务提供的操作(或方法)。其中我们可以得知几点:
1、WSDL是XML文档。
2、WSDL描述了某个web service 。如何描述的呢?规定了服务的位置和该服务内有哪些方法。
二、WSDL文档结构
1、WSDL 文档是利用这些主要的元素来描述某个 web service 的:
| 元素 | 定义 |
|---|---|
| web service 执行的操作 | |
| web service 使用的消息 | |
| web service 使用的数据类型 | |
| web service 使用的通信协议 |
一个 WSDL 文档的主要结构是类似这样的:
definition of types........
definition of a message....
definition of a port.......
definition of a binding....
WSDL 文档可包含其它的元素,比如 extension 元素,以及一个 service 元素,此元素可把若干个 web services 的定义组合在一个单一的 WSDL 文档中。
2、WSDL 端口
它可描述一个 web service、可被执行的操作,以及相关的消息。
可以把
3、WSDL 消息
每个消息均由一个或多个部件组成。可以把这些部件比作传统编程语言中一个函数调用的参数。
4、WSDL types
为了最大程度的平台中立性,WSDL 使用 XML Schema 语法来定义数据类型。
5、WSDL Bindings
WSDL 实例这是某个 WSDL 文档的简化的片段:
在这个例子中, 元素把 "glossaryTerms" 定义为某个端口的名称,把 "getTerm" 定义为某个操作的名称。操作 "getTerm" 拥有一个名为 "getTermRequest" 的输入消息,以及一个名为 "getTermResponse" 的输出消息。 元素可定义每个消息的部件,以及相关联的数据类型。对比传统的编程,glossaryTerms 是一个函数库,而 "getTerm" 是带有输入参数 "getTermRequest" 和返回参数 getTermResponse 的一个函数。
三、WSDL端口
1、
它可描述一个 web service、可被执行的操作,以及相关的消息。
端口定义了指向某个 web service 的连接点。可以把该元素比作传统编程语言中的一个函数库(或一个模块、或一个类),而把每个操作比作传统编程语言中的一个函数。
2、操作类型
请求-响应是最普通的操作类型,不过 WSDL 定义了四种类型:
| 类型 | 定义 |
|---|---|
| One-way | 此操作可接受消息,但不会返回响应。 |
| Request-response | 此操作可接受一个请求并会返回一个响应 |
| Solicit-response | 此操作可发送一个请求,并会等待一个响应。 |
| Notification | 此操作可发送一条消息,但不会等待响应。 |
四、WSDL 绑定
WSDL 绑定可为 web service 定义消息格式和协议细节。
绑定到 SOAP
一个 请求 - 响应 操作的例子:
binding 元素有两个属性 - name 属性和 type 属性。
name 属性定义 binding 的名称,而 type 属性指向用于 binding 的端口,在这个例子中是 "glossaryTerms" 端口。
soap:binding 元素有两个属性 - style 属性和 transport 属性。
style 属性可取值 "rpc" 或 "document"。在这个例子中我们使用 document。transport 属性定义了要使用的 SOAP 协议。在这个例子中我们使用 HTTP。
operation 元素定义了每个端口提供的操作符。
对于每个操作,相应的 SOAP 行为都需要被定义。同时您必须如何对输入和输出进行编码。在这个例子中我们使用了 "literal"。
五、WSDL 和 UDDI
1、UDDI 是一种目录服务,企业可以使用它对 Web services 进行注册和搜索。
UDDI,英文为 "Universal Description, Discovery and Integration",可译为“通用描述、发现与集成服务”。
什么是 UDDI?
UDDI 是一个独立于平台的框架,用于通过使用 Internet 来描述服务,发现企业,并对企业服务进行集成。
- UDDI 指的是通用描述、发现与集成服务
- UDDI 是一种用于存储有关 web services 的信息的目录。
- UDDI 是一种由 WSDL 描述的 web services 界面的目录。
- UDDI 经由 SOAP 进行通信
- UDDI 被构建入了微软的 .NET 平台
2、UDDI 基于什么?
UDDI 使用 W3C 和 IETF* 的因特网标准,比如 XML、HTTP 和 DNS 协议。
UDDI 使用 WSDL 来描述到达 web services 的界面
此外,通过采用 SOAP,还可以实现跨平台的编程特性,大家知道,SOAP 是 XML 的协议通信规范,可在 W3C 的网站找到相关的信息。
*注释:IETF - Internet Engineering Task Force
六、描述于 W3C 工作草案的完整 WSDL 1.2 语法已列在下面:
* ? ? ? * * ? * * ? * ? ? ? ? ? * ? * + * ?<-- binding details --> * * ?<-- binding details --> * ? ?<-- binding details --> ? ?<-- binding details --> * * ?<-- binding details --> * * ? * ?<-- address details -->
以下转自 原文:https://blog.csdn.net/u012702547/article/details/45667623
我们以天气预报WebService服务为例,来看看怎么阅读一个wsdl文档。
打开一个wsdl文档后,先看底部。

binding在这里:

portType在这里:

好了,看了上面的,我们来说说wsdl说明书的整体结构吧:
1.
2.
3.
4.
5.
另外附上一篇链接,讲解的很详细 https://blog.csdn.net/qq_19714937/article/details/68922185
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
