没有合适的资源?快使用搜索试试~ 我知道了~
RESTful webservice 和 SOAP webserivce 对比及区别
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 32 浏览量
2023-09-24
23:01:04
上传
评论
收藏 89KB DOCX 举报
温馨提示
试读
4页
RESTful webservice 和 SOAP webserivce 对比及区别
资源推荐
资源详情
资源评论
接口抽象
RESTful Web 服务使用标准的 HTTP 方法 (GET/PUT/POST/DELETE) 来抽象所有 Web 系统
的服务能力,而不同的是,SOAP 应用都通过定义自己个性化的接口方法来抽象 Web 服务,这
更像我们经常谈到的 RPC。例如本例中的 getUserList 与 getUserByName 方法。
RESTful Web 服务使用标准的 HTTP 方法优势,从大的方面来讲:标准化的 HTTP 操作方法,
结合其他的标准化技术,如 URI,HTML,XML 等,将会极大提高系统与系统之间整合的互操作
能力。尤其在 Web 应用领域,RESTful Web 服务所表达的这种抽象能力更加贴近 Web 本身
的工作方式,也更加自然。
同时,使用标准 HTTP 方法实现的 RRESTful Web 服务也带来了 HTTP 方法本身的一些优势:
�
无状态性(Stateless)
HTTP 协议从本质上说是一种无状态的协议,客户端发出的 HTTP 请求之间可以相互隔离,不
存在相互的状态依赖。基于 HTTP 的 ROA,以非常自然的方式来实现无状态服务请求处理逻辑。
对于分布式的应用而言,任意给定的两个服务请求 Request 1 与 Request 2, 由于它们之间并
没有相互之间的状态依赖,就不需要对它们进行相互协作处理,其结果是:Request 1 与 Request
2 可以在任何的服务器上执行,这样的应用很容易在服务器端支持负载平衡 (load-balance)。
�
安全操作与幂指相等特性(Safety /Idempotence)
HTTP 的 GET、HEAD 请求本质上应该是安全的调用,即:GET、HEAD 调用不会有任何的副
作用,不会造成服务器端状态的改变。对于服务器来说,客户端对某一 URI 做 n 次的 GET、
HAED 调用,其状态与没有做调用是一样的,不会发生任何的改变。
HTTP 的 PUT、DELTE 调用,具有幂指相等特性 , 即:客户端对某一 URI 做 n 次的 PUT、
DELTE 调用,其效果与做一次的调用是一样的。HTTP 的 GET、HEAD 方法也具有幂指相等特
性。
HTTP 这些标准方法在原则上保证你的分布式系统具有这些特性,以帮助构建更加健壮的分布式
系统。
安全控制
为了说明问题,基于上面的在线用户管理系统,我们给定以下场景:
参考一开始我们给出的用例图,对于客户端 Client2,我们只希望它能以只读的方式访问 User
和 User List 资源,而 Client1 具有访问所有资源的所有权限。
如何做这样的安全控制?
通行的做法是:所有从客户端 Client2 发出的 HTTP 请求都经过代理服务器 (Proxy Server)。
代理服务器制定安全策略:所有经过该代理的访问 User 和 User List 资源的请求只具有读取权
限,即:允许 GET/HEAD 操作,而像具有写权限的 PUT/DELTE 是不被允许的。
如果对于 REST,我们看看这样的安全策略是如何部署的。如下图所示:
资源评论
小小哭包
- 粉丝: 1899
- 资源: 3854
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功