REST风格到底是个什么风格???

程序员韩斌 发布于 2013/07/31 21:44
阅读 42K+
收藏 2

解读下一代网络:算力网络正从理想照进现实!>>>

在@Edsondi 的文章中发现此句: 

REST功能是Spring MVC 3.0新增的,它通过不带扩展名的URL来访问系统资源。

其实听说REST风格很久了,就是不太懂什么叫REST风格...

加载中
0
华兹格
华兹格
是这个意思,是对http://www.xxx.com/request?key=value&...形式的改进, 。REST看起来舒服,大势所趋。
会跳舞的石头
会跳舞的石头
前端传递的数据都放在URL里面吗?
1
kidbei
kidbei

说下我的理解:

前面说的那种URL风格并不是表示那就是restful。

ResultFul推荐每个URL能操作具体的资源,而且能准确描述服务器对资源的处理动作,通常服务器对资源支持get/post/put/delete/等,用来实现资源的增删改查,但是通常用浏览器访问资源都是GET,增加都是POST,而修改和删除不能正确描述。

比如xxxxx/user/1,我既要能表示我要找id为1的user,我还要能表示我能删掉id为1的user;

xxxxx/user,我既要能表示添加一个user,又要能表示修改一个user;

问题是现在的浏览器只支持post/get,它根本无法让服务器知道,我到底要查找user还是要删除User,要添加还是要修改user。

所以第三方框架为了实现这种效果而做了特定的规则去模拟实现,比如spring就用了

<filter> 
  <filter-name>HiddenHttpMethodFilter</filter-name> 
  <filter-class>org.springframework.web.filter.HiddenHttpMethodFilter</filter-class> 
</filter> 
这么个filter来模拟实现,以支持更多的http操作(put,delete),当我需要修改一个user的时候,只需要在<form>中加入<input type="hidden" name="_method" value="PUT">,这样提交这个表单的时候spring会知道这是要修改一个user。

具体的不想打字了,这种url风格使得项目架构清晰,好处一时说不上来,但是习惯性的使用这种风格,确实很方便。

个人理解,勿喷

0
叶知泉
叶知泉

www.xxxxx.com/user/1

www.xxxxx.com/user/1/2/20

www.xxxxx.com/user


0
程序员韩斌
程序员韩斌

引用来自“叶知泉”的答案

www.xxxxx.com/user/1

www.xxxxx.com/user/1/2/20

www.xxxxx.com/user


这种就叫做REST风格?

REST风格就代表的是这个意思么?

kidbei
kidbei
必然不是
0
程序员韩斌
程序员韩斌

引用来自“hanzhankang”的答案

是这个意思,是对http://www.xxx.com/request?key=value&...形式的改进, 。REST看起来舒服,大势所趋。
哦,谢谢...那就了解了.
0
Tuesday
Tuesday

REST应该就是没有索引值,也就中key的概念.

name=myname, 通常我们通过key 的名字name来找对应值, rest就不再这样了, 通过组数组.

1,2,3,4这样.

0
苦行瓜
苦行瓜
学习了,osc是一个好地方
0
大树_
大树_

简单点说就是 一个URL对应一个资源  增删改查用HTTP 的method来标示  很多APP服务端都是这样做的

0
LiShixi
LiShixi
在我看来最直观的就是URL里没有 ?= &了,简单真好。
返回顶部
顶部