【发布时间】:2014-06-11 00:05:36
【问题描述】:
我一直在阅读有关 REST 的信息,并试图弄清楚使用它的优势是什么。具体来说,REST 样式的 URL 有什么优势,使其值得在更典型的带有查询字符串的 GET 请求中实现?
为什么是这个网址:
http://www.parts-depot.com/parts/getPart?id=00345
认为不如这个?
http://www.parts-depot.com/parts/00345
在上面的示例中(取自here),第二个 URL 确实看起来更加优雅和简洁。但这是有代价的……第一个 URL 很容易用任何网络语言实现,开箱即用。第二个需要额外的代码和/或服务器配置来解析值,以及额外的文档和花费时间向初级程序员解释系统并向同行证明它的合理性。
所以,我的问题是,除了拥有看起来很酷的 URL 的乐趣之外,RESTful URL 对我来说还有哪些优势可以让使用它们值得实施成本?
【问题讨论】:
-
只是好奇:哪些语言需要额外的代码和/或配置来实现后面的 URL?
-
我特别想到了 Java servlet。第二个 URL 的普通实现将涉及调用 request.getURL(),将 URL 路径拆分为令牌,并使用令牌做一些事情。这不是很多工作,但它不像调用 request.getParameter("parameterName") 那样干净。或者,您可以保留 request.getParameter(),并让 Web 服务器层使用 mod-rewrite 配置重写第二个 URL,使其看起来像第一个 URL……如果您必须更新一个,这似乎是要走的路一堆现有的服务到新的 URL 样式。
标签: web-services url rest