• Web 服务REST 架构方式的6个特征

      • 客户端-服务器 客户端和服务器必须有明确的界限

      • 无状态 客户端发出的请求中必需包含所有必要的信息。服务器不能在两次请求之间保存客户端的任何状态

      • 缓存 服务器发出的响应可以标记为可缓存或不可缓存,这样出于优化目的,客户端(或客户端和服务器之间的中间服务)可以使用缓存

      • 接口统一 客户端访问服务器资源时使用的协议必须一致,定义良好,且已经标准化。REST Web服务最常使用的接口与是HTTP协议

      • 系统分层 在客户端和服务器之间可以按需插入代理服务器、缓存、或网关,以提高性能、稳定性和伸缩性

      • 按需代码 客户端可以选择从服务器上下载代码,在客户端的环境中执行

    • 在设计良好的REST API中,客户端只需知道几个顶级资源的URL,其他资源的URL则从响应中包含的链接上发掘

    • 版本

      • 在URL中假如Web 服务的版本有助于条理化管理新旧功能,让服务器能为新客户端提供新功能,同时继续支持旧版客户端。

      • web 端可能会修改使用的 Json 格式,可以通过/api/v1.1/posts/提供;客户端仍旧能通过/api/v1.0/posts/ 获取旧的 Json 格式,在一段时间内,服务器要同时处理 v1.1 和 v1.0 两个版本的 URL

      • 提供多版本支持会增加服务器的维护负担,但在某些情况下,这是不破坏现有部署且能让程序不断发展的唯一方式。

    • 蓝图(blueprint) 的理解和用法

    • 常见的API返回HTTP状态码
      Rest - 图1