RESTful

RESTful(表现层状态转换:Representational State Transfer)是一种API设计规范,用于Web数据接口的设计。

为什么要用RESTful

  • 提供无状态的接口,可以让不同的服务器处理不同的请求,提高了系统的水平扩展性
  • 以HTTP为根基,保障了系统的演化能力,提供长期的兼容性 (没想明白)

REST架构约束

  1. 统一界面:请求中包含独立资源的标识;消息具备自我描述性;用超媒体驱动应用状态(当一个REST客户端访问了最初的REST应用的URI后,客户端可以使用服务器提供的链接,动态地发现所有可用的资源和操作)
  2. C/S架构:客户端应该只指导资源URI,无需关心与数据库的交互部分
  3. 无状态
  4. 可缓存:缓存应用于资源,这些资源必须自己声明为可缓存,缓存可以在客户端或是服务器上实现
  5. 分层系统
  6. 按需代码(可选):服务器可以发送可执行的代码给客户端来临时拓展功能。

REST命名