一个学习RoR中REST的好范例beast
原文: http://www.javaeye.com/topic/39355
今天发现这个forum的实现基本上使用了RESTful风格。粗看了一下代码,感觉对学习REST有一些帮助,
网址:
源码:
http://svn.techno-weenie.net/projects/beast/trunk/
安装说明:
http://beast.caboo.se/forums/1/topics/381
调用beast.caboo.se 的REST服务的说明:
http://weblog.techno-weenie.net/2006/12/13/taking-ares-out-for-a-test-drive
可以使用curl工具来测试。(一个测试的说明文档)
http://blog.inquirylabs.com/2006/08/04/how-to-use-curl-to-test-restful-rails/
我对REST的理解:REST简化了不同应用(系统)之间的互操作性。而RoR的REST实现则更加简练,更简单,如果几个系统都采用RoR开发(最新的1.2版),系统之间要实现互操作是很简单的。
杂谈:我一直以来个人认为互联网上的url广义的看就相当于一般的C,C++,.JAVA中的函数,而传递给url的参数(?pramA=a&pramB=b),就相当于函数的参数,如果要实现回调,则把一个url当作参数传递过去就好了,当然url上“函数签名(或者叫约定)”远没有本地函数调用那么“安全”,回调方必须了解回调url的约定。rails以前的版本在url中隐含了一些参数信息(/controller/show/1),并且rails内定了不少函数签名规则。而Rails1.2的REST则在HTTP协议的Header中隐含了一些参数或者说语义(POST,GET,PUT,DELETE)。Rails1.2的REST实现 替程序员作了很多工作,使得调用url"函数" 就像调用本地函数一样方便。
posted on 2009-04-24 15:48 smwikipedia 阅读(282) 评论(0) 编辑 收藏 举报