Restful Api

2017-12-20  本文已影响0人  倾斜的阳光

RESTful 是什么?

RESTful本质是一种软件架构风格, 面向资源来设计API

解决的问题

设计概念和准则

资源

什么是资源?

所谓的 "资源",就是网络上的一个实体,或者说是网络上的一个具体信息。

HTTP协议-URL

HTTP协议是一个属于应用层的协议, 特点是简洁,快速。

schema://host[:port]/path[?query-string][#anchor]

HTTP协议-请求

组成格式:请求行, 消息报头, 请求正文

请求行

格式: Method Request-URI HTTP-Version CRLF

举例

GET / HTTP/1.1 CRLF

请求方法

HTTP协议-响应

组成格式: 状态行, 消息报头, 响应正文

状态行

HTTP-Version Status-Code Reason-phrase CRLF
HTTP/1.1 200 OK

常用状态码

RESTful架构与 其他架构的区别

SOAP WebService

WebService 是一种跨编程语言和操作系统平台的远程调用技术。
WebService 通过HTTP协议发送请求和接受结果时采用XML格式封装,并增加了一些特定的HTTP消息头,这些特定的HTTP消息头和XML内容格式就是SOAP协议。

效率和易用性

SOAP由于各种需求不断扩充其本身协议的内容,导致在SOAP处理方面的性能有所下降。同时在易用性方面以及学习成本上也有所增加。
RESTful由于其面向资源接口设计以及操作抽象简化了开发者的不良设计,同时也最大限度的利用了HTTP最初的应用协议设计理念。

安全性(还需探索)

RESTful 对于资源型服务接口来说很合适,同时特别适合对于效率要求很高,但是对于安全要求不高的场景。(安全性应该可以提升)
SOAP的成熟性可以给需要提供多开发语言的,对于安全性要求较高的接口设计带来便利。所以单纯从设计模式来看谁会占据主导地位没有什么意义,关键还是要看应用场景。

上一篇 下一篇

猜你喜欢

热点阅读