REST
是一种架构风格,而不是严格的标准。然而在一个项目团队中,要求对这种风格有着同一的认识,
才能发挥REST
的最大作用--可读性好。
用好了这种风格,可以大大地减少文档的必要,不需要每篇文档都连篇累牍的重复很多事情,在这样一种
统一的结构下做事,代码管理也更加方便。
虽然每个人对REST
有着不同的理解,但是我总结了基本要遵循三点:
每个请求,所请求的都是资源。资源可以是现实存在服务器上的某个文件,某些数据,也可以是
一个服务。所以在命名规范时,当请求一个具体实体内容时,使用名词命名,比如order
,device
,
当使用某种服务时,可以使用动词,但是建议最好使用动名词形式。客户端和服务端交互传递的是某种
view
话的东西,比如你一个html
,或者xml
,当然,最常
用的,其实是字符串
和json
。追求极致的团队,可能会要求只是用json
,但我并不认为这是个
好事。太过于极端,往往都会造成不必要的浪费。对这种资源的操作是通过HTTP的四个请求方式来实现的,基本的情况如下:
- GET 获取资源
- POST 新建资源
- PUT 更新资源
- DELETE 删除资源
注意:个人经验中,PUT和DELETE很少见到有使用的。PUT所声明的更新资源,很多时候都是使用POS
T代替,因为很多客户端的情况,只能发送GET和POST请求。DELETE用于删除资源,一般这样的接口很少
存在,就是因为不希望客户端可以随便删除资源。
关于RESTful
的实现,过两天打算写一篇java
语言的jersey
框架的实践。