注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

断尘居

温柔的男人像海洋。

 
 
 
 
 

日志

 
 

关于RESTful Web Services中的API设计原则的一点心得  

2014-03-04 18:42:14|  分类: SOAP/RESTful |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

        RESTful作为一种软件架构风格,其核心思想是是服务的设计应该以资源为中心而非服务的功能,由于其原生态、可读性高、依赖小等特点让越来越多的设计者为之倾倒,REST风格的URI清新自然、优雅简洁、层级表达能力强,当然设计REST服务时,也要遵循它的一些原则:

 

原则一:使用原生HTTP方法进行资源访问

1、           HTTP#GET     读取资源

2、           HTTP#POST    创建资源

3、           HTTP#PUT       更新资源

4、           HTTP#DELETE  删除资源

 

原则二:服务无状态(无会话)

    在客户端与服务端一次交互中不应该有任何会话的发生,任意一个服务端均能为客户端提供服务,也就是说客户端并不是认识服务端谁是谁。有了这个前提,则可以动态增减服务实例,并且在这些实例之间平衡负载,从而提高系统水平方向的伸展性,这在大规模分布式系统中尤为重要。


原则三:使用目录风格设计URL以表示资源

比如:

http://www.bobzhao.com/book     # 所有图书列表

http://www.bobzhao.com/author/{id}/book # 某作者所有的书

http://www.bobzhao.com/author/{id}/{year}/{month}/book # 某作者某年某月出的书

 

原则四:使用XMLJSON传输数据

服务和请求的消息数据中可能包含了资源的属性或描述,服务采取结构良好且易读的方式来描述资源。资源可能是一个实体,也可能是一个实体集合,XMLJSON是系统交互中最常见的两种格式,个人比较偏向于JSON

 e.g.

实体:

{“bookName” : “RESTful Web Services Cookbook”}

 

集合:

{

    "bookList": [

        {

            "bookName": "RESTful Web Services Cookbook"

        },

        {

            "bookName": "Head First Java"

        }

    ]

}


  评论这张
 
阅读(697)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017