This link has been bookmarked by 42 people . It was first bookmarked on 27 Dec 2007, by Outmyth OUT of MY THoughts.
-
11 Aug 17
-
01 Feb 15
-
REST定义了应该如何正确地使用(这和大多数人的实际使用方式有很大不同)Web标准,例如HTTP和URI。
-
-
07 Dec 11
-
30 Nov 10
-
19 Jul 10
-
25 Jan 10
-
- 为所有“事物”定义ID
- 将所有事物链接在一起
- 使用标准方法
- 资源多重表述
- 无状态通信
五条关键原则列举如下:
-
在这里我使用了“事物”来代替更正式准确的术语“资源”,因为一条如此简单的原则,不应该被淹没在术语当中。思考一下人们构建的系统,通常会找到一系列值得被标识的关键抽象。每个事物都应该是可标识的,都应该拥有一个明显的ID——在Web中,代表ID的统一概念是:URI。URI构成了一个全局命名空间,使用URI标识你的关键资源意味着它们获得了一个唯一、全局的ID。
-
对事物使用一致的命名规则(naming scheme)最主要的好处就是你不需要提出自己的规则——而是依靠某个已被定义,在全球范围中几乎完美运行,并且能被绝大多数人所理解的规则。想一下你构建的上一个应用(假设它不是采用RESTful方式构建的)中的任意一个高级对象(high-level object),那就很有可能看到许多从使用唯一标识中受益的用例。比如,如果你的应用中包含一个对顾客的抽象,那么我可以相当肯定,用户会希望将一个指向某个顾客的链接,能通过电子邮件发送到同事那里,或者加入到浏览器的书签中,甚至写到纸上。更透彻地讲:如果在一个类似于Amazon.com的在线商城中,没有用唯一的ID(一个URI)标识它的每一件商品,可想而知这将是多么可怕的业务决策。
-
下面是一些你可能想到的URI的例子:
http://example.com/customers/1234
http://example.com/orders/2007/10/776654
http://example.com/products/4554
http://example.com/processes/salary-increase-234正如我选择了创建便于阅读的URI——这是个有用的观点,尽管不是RESTful设计所必须的——应该能十分容易地推测出URI的含义:它们明显地标识着单一“数据项”。但是再往下看:
http://example.com/orders/2007/11
http://example.com/products?color=green首先,这两个URI看起来与之前的稍有不同——毕竟,它们不是对一件事物的标识,而是对一类事物集合的标识(假定第一个URI标识了所有在2007年11月份提交的定单,第二个则是绿颜色产品的集合)。但是这些集合自身也是事物(资源),也应该被标识。
注意,使用唯一、全局统一的命名规则的好处,既适用于浏览器中的Web应用,也适用于机对机(machine-to-machine,m2m)通信。
-
-
27 Nov 09
-
24 Aug 09
-
16 Jul 09
-
12 Jun 09
-
12 Apr 09
-
20 Mar 09
-
05 Mar 09
-
13 Feb 09
-
使用URI标识所有值得标识的事物,特别是应用中提供的所有“高级”资源,无论这些资源代表单一数据项、数据项集合、虚拟亦或实际的对象还是计算结果等。
-
-
07 Jan 09
flashcloud在这篇文章里,Stefan Tilkov对REST(表述性状态转移)——万维网背后的架构——做了一次非常实用的介绍,主要包括可确认的资源、链接和超媒体、标准方法、多重描述以及无状态通信等。
-
24 Nov 08
-
04 Aug 08
-
14 Jun 08
-
为所有“事物”定义ID
-
-
10 Mar 08
-
20 Feb 08
-
14 Feb 08
-
04 Feb 08
-
14 Jan 08
-
- 为所有“事物”定义ID
- 将所有事物链接在一起
- 使用标准方法
- 资源多重表述
- 无状态通信
五条关键原则列举如下:
-
-
10 Jan 08
-
08 Jan 08
-
27 Dec 07
Would you like to comment?
Join Diigo for a free account, or sign in if you are already a member.