简介javascript
REST(英文:Representational State Transfer,简称REST)描述了一个架构样式的网络系统,好比 web 应用程序。它首次出如今 2000 年 Roy Fielding 的博士论文中,他是 HTTP 规范的主要编写者之一。在目前主流的三种Web服务交互方案中,REST相比于SOAP(Simple Object Access protocol,简单对象访问协议)以及XML-RPC更加简单明了,不管是对URL的处理仍是对Payload的编码,REST都倾向于用更加简单轻量的方法设计和实现。值得注意的是REST并无一个明确的标准,而更像是一种设计的风格。html
定义:简单来讲REST是一种系统架构设计风格(而非标准),一种分布式系统的应用层解决方案。java
目的:Client和Server端进一步解耦。git
1、协议
API与用户的通讯协议,老是使用HTTPs协议。github
2、域名
1.应该尽可能将API部署在专用域名之下,(这中状况会存在跨域问题)web
https://api.example.com数据库
2.若是肯定API很简单,不会有进一步扩展,能够考虑放在主域名下。json
https://example.org/api/api
3、版本(Versioning)
应该将API的版本号放入URL。跨域
https://api.example.com/v1/
另外一种作法是,将版本号放在HTTP头信息中,但不如放入URL方便和直观。Github采用这种作法。
4、路径(Endpoint)
路径又称"终点&