【发布时间】:2011-03-02 22:57:56
【问题描述】:
我一直在努力理解我一直在阅读的关于 RESTful 服务的几点。我希望有人可以帮助澄清。
1a) 在谈论 RESTful 服务时,似乎普遍厌恶生成的代码。
1b) 如果您使用 WADL 为 RESTful 服务生成客户端,那么当服务更改时,您的客户端代码也会发生更改。
为什么我不明白:无论您是在引用 WADL 并使用生成的代码,还是手动从 RESTful 响应中提取数据并将它们映射到您的 UI(或您正在对它们执行的任何操作)(如果发生变化)在底层服务中,代码似乎在这两种情况下都会中断。例如,如果返回的数据从 FirstName 和 LastName 更改为 FullName,则在这两种情况下,您都必须更新代码以获取新字段并可能以不同方式处理它。
2) RESTful 服务不需要 WADL 的论点,因为返回类型应该是众所周知的 MIME 类型,并且您应该已经知道如何处理它们。
为什么我不明白:是否期望服务返回的每种“类型”数据都会存在唯一的 MIME 类型?如果是这样,是否意味着 RESTful 服务的消费者需要阅读 RFC 来确定返回数据的结构、如何使用每个字段等?
我读了很多书试图自己弄清楚这一点,所以我希望有人能提供具体的例子和现实世界的场景。
【问题讨论】:
-
这篇文章很好地总结了我的问题,但从另一个角度来看,我认为它解释得不够好,所以我真的试图澄清本文的要点文章:bitworking.org/news/193/Do-we-need-WADL
标签: web-services rest code-generation