RESTful风格有啥好处吗

这个问题可以首先从什么是RESTful说起,然后在来谈谈它的优点,最后在来回答题主的问题。RESTful是一种设计模式,或者说是一种设计规范,它并没有太多强制性的要求之类的,实际上它有的只是几个原则,当一个应用满足这些原则的时候,可以认为它是RESTful的。Roy Fielding博士提出RESTful是可以认为符合下面设计规范的应用,这些规范包括:模型表示(Representations)消息(Messages)URIs一致接口(Uniform interface)无状态(Stateless)资源之间的链接(Links between resources)缓存(Caching)这些规范的具体内容不再详述,可以参考任意的RESTful介绍都会有讲到。RESTful可以认为是一种建立在HTTP协议之上的设计模式,充分的利用了HTTP协议的特定,使用URL来表示资源,用各个不同的HTTP动词来表示对资源的各种行为。这样做的好处就是资源和操作分离,让资源的管理更加规范。下面回答下题主的问题。1,应该说是在web中,通过浏览器来发送请求的时候,只能使用POST和GET。这个限制仅在RESTful服务的客户端为浏览器的时候才存在,当客户端为其他情况,而仅使用HTTP来通信的时候就没有这种限制了。这样做的好处就是资源和行为分离。2,REST的核心是资源,并且资源是用统一资源定位符URLs)来标识的。概念上来讲,资源和他的状态(提供给客户的格式)是分开的。REST不做任何格式上的要求,但是一般包含XML和JSON。HTTP中的键值对这个题主应该讲的是HTTP报头中的值和属性吧,这个在RESTful中也是可以支持的。3,给谁用的问题,可以给自己开发的应用用,也可以给第三方用,其他有很多开放的API服务他们都是使用RESTful规范的。如果是在自己的应用中使用,这样的情况题主可能就无法通过表面现象来识别了,因为他作为一种通信方式被应用隐藏了。
■网友
适合crud并且只适合crud
■网友
修改后的最大好处在语义上。GET和DELETE操作都是幂等的。 REST API 是将自身资源暴露出来,提供给外界进行操作和处理,现在应该很多系统都是restful风格的吧
■网友
看起来“语义”更准确一点。以及提供了一个管理大量API的方式,例如在特定情况下只允许GET就能保证数据不被修改。然而并没有什么卵用。


    推荐阅读