REST从资源的角度来观察整个网络,分布在各处的资源由URI确定,而客户端的应用通过URI来获取资源的表征。获得这些表征致使这些应用程序转变了其状态。随着不断获取资源的表征,客户端应用不断地在转变着其状态,所谓表征状态转移。
因为我们需要的是一个Machine到Machine沟通的平台,需要设计一个API。而设计一个API来说,RESTFul是很不错的一种选择,也是主流的选择。而设计一个RESTFul服务,的首要步骤便是设计资源模型。
互联网上的一切信息都可以看作是一种资源。
HTTP Method | Operation Performed |
---|---|
GET | Get a resource (Read a resource) |
POST | Create a resource |
PUT | Update a resource |
DELETE | Delete Resource |
13.1 设计RESTFul API
设计RESTFul API是一个有意思的话题。下面是一些常用的RESTFul设计原则:
13.2 REST关键目标
- 组件间交互的可伸缩性
- 接口的通用性
- 组件的独立部署
- 通过中间组件来减少延迟、实施安全策略和封装已有系统
13.3 判断是否是 RESTFul的约束条件
- 客户端-服务器分离
- 无状态
- 可缓存
- 多层系统
- 统一接口
- 随需代码(可选)