REST(Representational State Tranfer)描述性状态转移,最早由Roy Fielding在他的博士论文中提出。REST是一种分布式系统设计的架构风格,它是一系列的约束,而不是一个标准,比方说要无状态,要有客户端/服务端关系,要有统一接口等。REST通常都与HTTP相关,但是这种相关性并不是严格存在的。
REST的原则:
1. Resources
资源通过容易理解的URI目录结构显示;
2. Representation
将JSON或XML转换为数据对象和属性;
3. Message
信息明确使用HTTP方法传输(post, get, put, delete)
4. Stateless
无状态的交互不会在两个请求之间把客户端的上下文保存到服务端,限制并约束了状态依赖的可扩展性,由客户端保存会话状态。
HTTP方法
使用HTTP方法实现对HTTP请求的CRUD操作。
GET
POST
PUT
PATCH
DELETE
HTTP状态码
1xx: 信息
2xx: 成功
3xx: 重定向
4xx: 客户端错误
5xx: 服务端错误
多媒体类型
Accept和Content-type HTTP头可以用来描述HTTP请求中发送/请求的内容。如果客户端用JSON发出请求,那么它可能将Accept设置为application/json,相应的,如果服务端返回的是数据,则将Content-type设置为application/xml,告诉客户端这个请求中发送的是XML。
网友评论