REST含义为”表述性状态转移”, 基于REST的Web服务遵循一些基本的设计原则, 比较难理解的是服务器端的请求应该是无状态的。
简介:
REST 含义为“表述性状态转移”。REST是一种开发 Web 应用的架构风格,可以将其理解为一种设计模式。
设计原则:
1)通过 URI 来标识资源:
系统中的每一个对象或是资源都可以通过一个唯一的 URI 来进行寻址,URI 的结构应该简单、可预测且易于理解,比如定义目录结构式的 URI。
2)统一接口:
建立创建、检索、更新和删除操作与 HTTP 方法之间的一对一映射:
若要在服务器上创建资源,应该使用 POST 方法;
若要检索某个资源,应该使用 GET 方法;
若要更新或者添加资源,应该使用 PUT 方法;
若要删除某个资源,应该使用 DELETE 方法。
3)资源多重表述:
URI 所访问的每个资源都可以使用不同的形式加以表示(比如 XML 或者 JSON),具体的表现形式取决于访问资源的客户端。在 REST 的世界中,资源即状态,每个网页是其一个状态;URI 是状态的表述;REST 风格的应用则是从一个状态迁移到下一个状态的状态转移过程。早期互联网只有静态页面的时候,通过超链接在静态网页间浏览跳转的 page->link->page->link… 模式就是一种典型的状态转移过程。
4)无状态:
客户端对服务器端的请求应该是无状态的,请求不要求服务器在处理请求时检索任何类型的应用程序上下文或