ASP.net MVC与RESTful ROA的思想还是有点区别的
2010-05-10 18:08
393 查看
以blog系统为例,一个简单的blog系统模型包括:
1.发表一篇新的blog
2.显示一篇blog
3.修改一篇blog
4.删除一篇blog
ASP.net MVC会是这样的URL规划:
*. http://www.gaotianpu.com/blog/create,创建 get方法给用户展示一个html表单,供用户提交数据
post方法接受用户提交的数据,插入到db
*. http://www.gaotianpu.com/blog/123,获取展示blog id为123的blog
*. http://www.gaotianpu.com/blog/Edit/123,修改 get,展示编辑用的html表单
post,接受编辑后的数据
*. http://www.gaotianpu.com/blog/Delete/123,删除 通常都用get方法执行.
MVC会在url中显示的给出资源的操作方法,另外,MVC还要负责输出用户交互界面。
而RESTful ROA思想则会这样规划URL http://www.gaotianpu.com/blog/123 使用Http Method来区分针对该资源的操作:
*. get,获取id=123的blog
*. put,修改id=123的blog
*. delete,删除id=123的blog http://www.gaotianpu.com/blog/, *. post,表示创建一新blog。
(为了保证幂等操作,即防止重复提交相同内容,post方法会附加一个guid参数,若两次提交的guid参数相同,则表示重复提交,后一次提交的覆盖前一次。)
*. get ,加载blog列表.
当然,普通的web form是不支持put,delete,head,option等这样的特殊http方法的,但可以在post基础上模拟得到.
为什么会有这样的区别呢?
RESTful Web Service,就是用来提供web服务的,和asp.net mvc不同,它可以不考虑用户交互界面。
比如说,当创建、修改一篇blog时,asp.net mvc同一url要支持2种方法:get,给用户一个可操作的界面,post接受用户提交的数据,
而rest则不用考虑给用户这样的操作界面,操作界面要由客户端完成。
二者不存在谁替换谁,谁比谁更好的问题。
简单比较了一下,个人觉得使用ASP.net MVC 来实现RESTful webservice还是有些牵强的,不知道WCF是如何处理RESTfull web serivce的 ?
1.发表一篇新的blog
2.显示一篇blog
3.修改一篇blog
4.删除一篇blog
ASP.net MVC会是这样的URL规划:
*. http://www.gaotianpu.com/blog/create,创建 get方法给用户展示一个html表单,供用户提交数据
post方法接受用户提交的数据,插入到db
*. http://www.gaotianpu.com/blog/123,获取展示blog id为123的blog
*. http://www.gaotianpu.com/blog/Edit/123,修改 get,展示编辑用的html表单
post,接受编辑后的数据
*. http://www.gaotianpu.com/blog/Delete/123,删除 通常都用get方法执行.
MVC会在url中显示的给出资源的操作方法,另外,MVC还要负责输出用户交互界面。
而RESTful ROA思想则会这样规划URL http://www.gaotianpu.com/blog/123 使用Http Method来区分针对该资源的操作:
*. get,获取id=123的blog
*. put,修改id=123的blog
*. delete,删除id=123的blog http://www.gaotianpu.com/blog/, *. post,表示创建一新blog。
(为了保证幂等操作,即防止重复提交相同内容,post方法会附加一个guid参数,若两次提交的guid参数相同,则表示重复提交,后一次提交的覆盖前一次。)
*. get ,加载blog列表.
当然,普通的web form是不支持put,delete,head,option等这样的特殊http方法的,但可以在post基础上模拟得到.
为什么会有这样的区别呢?
RESTful Web Service,就是用来提供web服务的,和asp.net mvc不同,它可以不考虑用户交互界面。
比如说,当创建、修改一篇blog时,asp.net mvc同一url要支持2种方法:get,给用户一个可操作的界面,post接受用户提交的数据,
而rest则不用考虑给用户这样的操作界面,操作界面要由客户端完成。
二者不存在谁替换谁,谁比谁更好的问题。
简单比较了一下,个人觉得使用ASP.net MVC 来实现RESTful webservice还是有些牵强的,不知道WCF是如何处理RESTfull web serivce的 ?
相关文章推荐
- 【ASP.NET】 MVC 中@Html.Partial,@Html.Action,@Html.RenderPartial,@Html.RenderAction区别
- Asp.net MVC中的ViewData与ViewBag的区别
- ASP.NET MVC各个版本区别
- ASP.NET MVC 简单的分页思想与实现
- 解析ASP.NET WebForm和Mvc开发的区别 分类: ASP.NET 2013-12-29 01:59 11738人阅读 评论(5) 收藏
- ASP.NET MVC与ASP.NET Web API的区别
- asp.net MVC 和 webForm的区别
- Asp.Net MVC EF各版本区别
- asp.net mvc 和 asp.net三层的区别
- asp.net MVC和三层的区别
- Asp.net MVC中Html.Partial, RenderPartial, Action,RenderAction 区别和用法
- ASP.NET MVC与ASP.NET Web API的区别(转)
- ASP.NET Web Form 与 ASP.NET MVC 区别
- Asp.net MVC中Html.Partial, RenderPartial, Action,RenderAction 区别和用法
- 关于ASP.NET和.NET的区别和联系 对于一个新手,往往会被这些名字给搞蒙了,对不起(笨小孩我也被搞蒙过,见笑啦),这归根结底还是怪自己对知识掌握和了解的不够,废话不多,直接到主题。 ASP.N
- Asp.Net MVC EF各版本区别
- 解析ASP.NET WebForm和Mvc开发的区别
- 解析ASP.NET WebForm和Mvc开发的区别
- ASP.NET小结之MVC, MVP, MVVM比较以及区别(二)
- 解析ASP.NET WebForm和Mvc开发的区别