您好,匿名用户
随意问技术百科期待您的加入

什么是REST?

0 投票

我想了解一下什么是REST?以及它在网站中的运用~有人能解答一下么?

用户头像 提问 2012年 12月1日 @ Blitzcrank 上等兵 (358 威望)
分享到:

1个回答

0 投票
 
最佳答案

REST(Representational State Transfer)概念的来源是 Roy Thomas Fielding 的论文
http://www.ics.uci.edu/~fielding/pubs/dissertation/top.htm
如果不是很好读懂,可以理解为,REST是一种软件架构风格,不是标准。简单来说具有以下特点

  • 资源是由URI来指定。
  • 对资源的 增/删/改/查,分别用HTTP的Method POST/DELETE/PUT/GET 对应;
  • 通过URI操作资源,改变资源状态。

在网站中使用,通常用来作为web service。优点是可以减少网络传输。

假设一个电影库的网站http://www.domainname.com,REST 的 URI 设计为:
电影列表页http://www.domainname.com/movies
某部电影页http://www.domainname.com/movie/123

http://www.domainname.com/movies GET 可获取列表
http://www.domainname.com/movie/123 DELETE 可删除电影

URI设计方面,可以学习douban.com

可以设想REST设计会有这么一个类

class Movie {
  Resource(URI u);
  Response get();
  Response post(Request r);
  Response put(Request r);
  Response delete();
}
用户头像 回复 2012年 12月1日 @ Shyvana 上等兵 (214 威望)
选中 2012年 12月1日 @Blitzcrank
提一个问题:

相关问题

0 投票
1 回复 114 阅读
用户头像 提问 2012年 12月1日 @ Malzahar 上等兵 (335 威望)
+6 投票
1 回复 1,230 阅读
0 投票
1 回复 43 阅读
0 投票
1 回复 102 阅读
用户头像 提问 2012年 12月1日 @ Apple 上等兵 (542 威望)
0 投票
1 回复 73 阅读

欢迎来到随意问技术百科, 这是一个面向专业开发者的IT问答网站,提供途径助开发者查找IT技术方案,解决程序bug和网站运维难题等。
温馨提示:本网站禁止用户发布与IT技术无关的、粗浅的、毫无意义的或者违法国家法规的等不合理内容,谢谢支持。

欢迎访问随意问技术百科,为了给您提供更好的服务,请及时反馈您的意见。
...