栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

web服务:原理与技术04

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

web服务:原理与技术04

电子服务系统设计复习总结04 前言

本文档原意为考试复习所用,基于 《web服务:原理与技术》 课本。

第四章 1.应用程序间的通信与连接协议 ★1.1SOAP

①定义:SOAP(简单对象访问协议)是一个基于XML的轻量级通信协议,它允许两个计算机之间交换消息,而无须考虑两个计算机的操作系统、编程环境或对象模型框架。

②SOAP是Web服务消息传输协议的事实上的标准。

③SOAP的主要应用是应用程序间的通信。

④SOAP方法是一个用XML作为编码模式,遵循SOAP编码规则的http请求和响应。

1.2连线协议与传输协议

①连线协议:指定在不同的应用系统之间交换的数据的形式或状态。

②传输协议:是一种在系统之间传输数据的方法。

1.3SOAP满足的具体标准

简洁性:是指当传送相同的信息时,网络数据包是否比较简洁。程度适度的简明性通常是最佳的

协议效率:直接与简洁性相关。根据发送有效载荷的开销,可疑判定效率的高低。

藕合性:是指客户端应用对于变化的适配程度,松藕合和紧藕合。

可伸缩性:是指协议可以支持大量的用户。

互操作性:是指协议可以与大量不同的计算平台进行协作。

通常基于这些特征来综合评价包括XML和SOAP在内的协议

SOAP:耦合、互操作性、可伸缩性↑;简洁性、协议效率↓

2.SOAP作为消息传送协议 2.1SOAP的目标

不同的分布式计算平台具有异构性,SOAP的目标就是试图消除这一异构性所产生的各种障碍。

2.2Web服务通信和消息传送网络

①SOAP是一个无状态的单向消息交换协议。

②SOAP没有定义诸如编程模型等任何应用语义,也没有定义任何具体语义的实现。

③SOA不关心SOAP消息的路由、可靠的消息传送、防火墙的穿越等问题。

④在基于XML的消息传送分布式计算中,充当请求者或提供者的互联网节点的基本需求是 :

​ a.能够构造或解析SOAP消息

​ b.能够在网络上通过发送或接收消息进行通信

⑤最适合SOAP的传输协议是HTTP。

2.3使用SOAP的分布式消息传送

单向传送、请求/响应传送交换模式

Web Service可以使用单向消息传送或者请求/响应消息传送

★3.SOAP消息的结构 3.1SOAP消息的结构

①当前的SOAP规范描述了如何将关联的XML模式中定义的数据类型进行HTTP上的串行化。

②每一个SOAP消息本质上是一个XML文档。

★3.2SOAP构建模块

①一条SOAP消息就是一个普通的XML文档,包含下列元素

​ a.必需的Envelope元素,可把XML文档标识为一条SOAP消息

​ b.可选的Header元素,包含头部信息

​ c.必需的Body元素,包含所有的调用和响应信息

​ d.可选的Fault元素,提供有关在处理消息时所发生错误的信息

②语法规则

​ a.必须用XML来编码

​ b.必须使用SOAP Envelope命名空间

​ c.必须使用SOAP Encoding命名空间

​ d.不能包含XML处理指令

★3.3SOAP消息的基本结构



 ... ...


 ... ...
 
 ... ...
 


①SOAP的Envelope元素是SOAP消息单一的根元素。

②SOAP的编码规则集,该规则集将所定义的XML数据串行化。

③ SOAP

元素:

​ a.最多包含一个

子元素,必须是第一个子元素。

​ b.

元素包含了与端点或中间传输点相关的所有处理线索。

​ c.

的目的是对扩展的消息格式封装,且无须与有效载荷发生关联, 也不需要修改SOAP的基本结构

​ d.直接子元素称作“头块”,并表示为一个数据逻辑分组。

​ e.每一个头块都应当有自己的命名空间,帮助SOAP应用标识头部以及分别处理这些头块。

​ f.SOAP的actor属性可被用于将Header元素寻址到一个特定的端点。

​ g.mustUnderstand属性可用于标识标题项对于接收者来说是强制的还是可选的(0/1)。

​ h.许多头部涉及其他SOAP处理节点(称作SOAP中介)的参与,中介既可以接收也可以转发SOAP消息。

SOAP消息传送的模块性使得处理SOAP消息的代码页可以模块化

④SOAP消息体元素

​ a.SOAP消息必须包含元素,并且该元素必须是的直接后代,位于消息中所定义的任何头部之后。(任意数目,也可为空)

​ b.默认定义了Body元素内部的一个Fault元素,用于指示错误消息。

​ c.元素包含具体应用的XML数据或一个出错消息Fault,不能同时携带这两类信息。

​ d.元素和根元素的一个区别是它既是请求对象又是响应对象。

请求消息




 
 Apples
 


响应消息



 
 1.90
 


4.SOAP通信模型 4.1SOAP支持两类通信方式

①RPC:SOAP消息能够发出带参数的方法调用,并获得返回值。

②文档:可以使用SOAP来交换文档,这些文档可以包含任何类型的XML数据。

4.1通信方式与消息交换的模式

①SOAP通信方式可以是文档或RPC两者之一。

②SOAP消息的有效载荷通常是一个XML文档片段,或者是与RPC相关的参数、返回值的XML表示。

③单向消息交换模式、请求/响应消息交换模式指的是消息的流向,与具体内容无关。

​ (单向消息传送仅有一个方向,请求/响应有两个方向)

④文档和RPC方式的消息传递既可以采用单向传送的模式,也可以采用请求/响应消息传送的模式。

5.SOAP中的出错处理

SOAP出错模型中,使用专门的元素Fault来报告所有的SOAP错误和应用错误。

6.基于HTTP的SOAP

SOAP使用XML作为请求和响应参数的编码模式,并且使用HTTP作为传输协议来抵达互联网上的任何目的地,而无须任何额外的包裹或编码。

①HTTP + XML = SOAP

②SOAP请求可能是 HTTP POST 或 HTTP GET 请求。

③HTTP POST 请求规定至少两个 HTTP 头:ContentType 和 Content-Length。

★7.SOAP的优缺点

①SOAP的主要优点:

a.简单性:基于XML具有高度的结构化,容易解析。

b.可移植性:无须依赖底层平台,不需考虑字节顺序或计算机字长等问题。

c.与防火墙的相容性:POST机制具有广泛的可用性,可以穿过防火墙。

d.使用开放标准:使用XML开放标准来格式化数据。

e.互操作性:建立在开放技术至上,而且是基于特定厂商的技术。

f.被广泛接受:在消息通信领域,SOAP是最被接受的标准。

g.适应变化:SOAP基础架构的变化通常不会影响到使用协议的应用。

②SOAP的缺点:

a.SOAP最初仅限于HTTP,采用了并不适合所有情况的请求/应答体系结构。

b.SOAP是无状态的。

c.SOAP为基于值的串行化,而不支持基于引用的串行化。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/460590.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号