文章:REST 反模式

  • Mark Little
  • 徐涵

2008 年 8 月 4 日

话题:SOAREST架构

好,你已决定在 Web 上开发你的应用。下一步也许是 WS-* 或 REST。这时,你相信应该采用 REST——将它比作其他方法会有多难呢?嗯,正如 Stefan 在本文中所述,使用 HTTP 未必就是很好符合 REST 的。

HTTP 虽不是什么新事物,但人们使用它的方式却五花八门。其中有些做法是符合 Web 设计者的初衷的,但许多并非如此。要为你的 HTTP 应用(无论是面向人类、还是计算机、或同时面向这两者使用的)采用 REST 原则,意味着你要恰好反过来:尽量“正确地”使用 Web,或者说按符合 REST 的方式使用 Web (倘若你不喜欢用对或错来评判的话)。对许多人来说,这的确是一种崭新的方式方法。

他的文章中,他逐一细说了他碰到过的 8 种常见的(并且至少曾负有过责任的)反模式:

  • 全部采用 GET
  • 全部采用 POST
  • 忽视缓存
  • 忽视响应代码
  • 误用 cookies
  • 忽视超媒体
  • 忽视 MIME 类型
  • 破坏自描述性

所有架构风格一样,无论它是用于软件、硬件还是建筑的,知道什么该做、什么不该做是很重要的(若它们直接来自于实践,那更是如此),那样你便可以避免犯跟别人一样的错误——你应当注意你犯下的新错误,并从中吸取教训。

详细内容,请阅读全文REST 反模式


参与 InfoQ 中文站内容建设,请邮件至editors@cn.infoq.com。也欢迎大家到InfoQ 中文站用户讨论组参与我们的线上讨论。

SOAREST架构