RESTful 超媒体、相对或绝对 URI

标签 rest uri

我刚看完书REST in Practice: Hypermedia and Systems Architecture现在我正在尝试一些想法,但无法确定在我的响应文档中是使用绝对 URI 还是相对 URI。

我更喜欢 abosulte URI,但可以看到在进行生产时会出现问题,其中带有负载均衡器、apache 重写和 Tomcat 服务器的服务器基础结构会覆盖原始 URI 并弄乱我的 URI 生成机制,诸如此类的信息因为在遇到 Java 代码时,方案和上下文路径将被重写或丢失,并且从客户端的角度来看,URI 将不正确。

然后我很想只使用相对 URI,但这是一个好主意还是一个错误的转向?

这本书坚持使用绝对 URI,但我找不到任何关于此的提及。
Martin Fowler 撰写了关于 Richardson Maturity Model 的文章,他使用的是相对 URI。

你怎么认为?优点缺点?

最佳答案

我在许多表示中都使用了相对 URI。我的表示往往是基于 xml 的,所以我确保我包含了一个 xml:base 属性,这样相对 URI 的基础就很清楚了。

关于RESTful 超媒体、相对或绝对 URI,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5235113/

相关文章:

javascript - Microsoft Edge 浏览器缓存中的 RESTful Angular 应用

Android 如何从已知的 URI 获取单首歌曲的 ID 信息

ruby - Json 到 url 编码 ruby

asp.net-mvc - 如何根据 HTTP Accept header 的值进行路由?

ruby-on-rails - 什么是Restful路由?

java - 无法使用 java SoapMessage 更改信封中的 soap URI

android - 华为桌面设置SDK 23+如何授权?

android - 如何打开云端 "virtual"文件的输入流?

java - 如何提高使用传统数据库(例如只能运行 SQL 而不能运行存储过程的 HP NonStop Tandem)的任何应用程序的性能?

rest - DDD 和聚合事务边界