RESTful理解

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_33208896/article/details/78773627

REST,即Representational State Transfer的缩写,意为”表现层状态转化”,RESTful是HTTP协议的一种规范化设计风格,是对资源(对象)的操作,RESTful具有简洁、方便、快捷、高效、安全、可扩展、透明的特点。
RESTful有两个原则:
1.无状态性:客户端与服务器交互的请求是无状态的。客户端与服务端无需为每次请求保存状态,客户端请求不必考虑当前状态,不管IOS、Android、H5哪个端请求服务器,URI是唯一的,但是可由任何一个服务器给予响应,不存在服务器重启,只不过客户端得不到响应;
2.分层式:在RESTful设计开发中,它只和当前层的组件交互,不了解其他层的组件,限制了系统整体的复杂性。
RESTful的特点:
1.规范化:GET(读取)、POST(添加)、PUT(修改)、DELETE(删除),各司其职。当如果互相使用,则不符合设计规范,系统也比较乱;
2.标识唯一:所有的端访问的都是统一的URI;
3.状态转化:URI表现形式可以不一样。同一个URI,根据不同请求方式,响应结果不同,请求的Header Accept的不同,则结果也不同,它表示的是一个互动过程的链接;
4.所有的约束信息都在此次请求中:客户端请求的方式一般包含在 Request Header的Method中,信息包含在Accept、Accept-Encoding、Accept-Language,Authentication、Cookie中,服务端通过发送Content-Length、Content-Type响应请求。客户端通过Status Code进行操作,REST认为,所有信息都能通过请求一次性发送,而不必再采用方式保存状态,请求的信息已经说明了请求的意义。
5.缓存性:在HTTP响应里利用Cache-Control、Expires、Last-Modified三个头字段,可以让浏览器缓存资源一段时间,通过缓存减少请求次数,提高性能。

猜你喜欢

转载自blog.csdn.net/qq_33208896/article/details/78773627