12 设计RESTful API

12 设计RESTful API

设计RESTful API是一个有意思的话题。下面是一些常用的RESTful设计原则:

12.1 REST关键目标

  • 组件间交互的可伸缩性
  • 接口的通用性
  • 组件的独立部署
  • 通过中间组件来减少延迟、实施安全策略和封装已有系统

12.2 判断是否是 RESTful的约束条件

  • 客户端-服务器分离
  • 无状态
  • 可缓存
  • 多层系统
  • 统一接口
  • 随需代码(可选)

12.3 设计RESTful资源

12.4 设计RESTful URI

12.5 JSON

图像说明文字

12.6 REST

REST从资源的角度来观察整个网络,分布在各处的资源由URI确定,而客户端的应用通过URI来获取资源的表征。获得这些表征致使这些应用程序转变了其状态。随着不断获取资源的表征,客户端应用不断地在转变着其状态,所谓表征状态转移。

因为我们需要的是一个Machine到Machine沟通的平台,需要设计一个API。而设计一个API来说,RESTful是很不错的一种选择,也是主流的选择。而设计一个RESTful服务,的首要步骤便是设计资源模型。

12.6.1 资源

互联网上的一切信息都可以看作是一种资源。

HTTP Method

Operation Performed

GET

Get a resource (Read a resource)

POST

Create a resource

PUT

Update a resource

DELETE

Delete Resource