REST是什么意思? 这是什么,为什么它现在变大了?

我了解(我认为)RESTful-ness背后的基本理念。 使用HTTP方法在语义上 - GET GET,PUT puts,DELETE删除等等......对吗? 我认为我理解了REST背后的想法,但我认为我很困惑这一点与HTTP实现的细节。 休息背后的驱动理念是什么,为什么这会变成一件重要的事情? 人们真的一直在使用它很长一段时间,在我的手电筒从未闪耀过的互联网角落里?


Google Talk谈到Atom发布协议与RESTful实现有很多协同作用。 对此有何想法?


这就是REST可能的样子:

POST /user
fname=John&lname=Doe&age=25

服务器响应:

201 Created
Location: /user/123

将来,您可以检索用户信息:

GET /user/123

服务器响应(假设XML响应):

200 OK
<user><fname>John</fname><lname>Doe</lname><age>25</age></user>

更新:

PUT /user/123
fname=Johnny

这是我的看法...

对于创建RESTful服务的吸引力在于,我们使用四种方法 (创建,检索,更新,销毁)来标准化,而不是用许多功能方法创建Web服务:

  • POST
  • 得到
  • 删除
  • REST越来越流行,因为它也代表了应用程序层的消息格式标准化。 虽然HTTP使用REST的四个基本动词,但HTML的常见HTTP消息格式不是用于构建应用程序的合同。

    我听说过的最好的解释是TCP / IP与RSS的比较。

    以太网代表了物理网络的标准化。 互联网协议(IP)代表了堆栈中较高层的标准化,并具有几种不同的风格(TCP,UDP等)。 “传输控制协议”(保证数据包传输)定义的通信协议的引入为我们提供了一整套适用于应用层的新服务(FTP,Gopher,Telnet,HTTP)。

    在类比中,我们采用XML作为“协议”,现在我们开始标准化消息格式。 RSS正在迅速成为许多RESTful服务的基础。 Google的GData API是RSS / ATOM变体。

    “桌面小工具”是这种炒作的绝佳实现:一个简单的客户端可以使用通用的API和消息传递标准来消费基本的Web内容或复杂的混搭。


    目前HTTP使用不足并且被错误使用。

    我们通常只使用两种HTTP方法:GET和POST,但还有一些:DELETE,PUT等(http://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html)

    因此,如果我们拥有由RESTful URL定义的资源(应用程序中的每个域对象具有http://yoursite.com/path/to/the/resource形式的唯一URL)以及体面的HTTP实现,我们可以在您的域写作句子:

    获取http://yoursite.com/path/to/the/resource

    删除http://yoursite.com/path/to/the/resource

    POST http://yoursite.com/path/to/the/resource

    等等

    建筑很好,一切。

    但这只是理论上的观点,现实世界中的情景在我的答案中发布的所有链接中都有描述。

    链接地址: http://www.djcxy.com/p/12323.html

    上一篇: What exactly does REST mean? What is it, and why is it getting big now?

    下一篇: What exactly is a Rest API