【发布时间】:2016-03-29 21:41:46
【问题描述】:
在使用我们现有的 REST 服务之一开发客户端应用程序时,我可以选择使用 JSON 或 XML 响应。 XML 响应由带有架构信息的 XSD 文件描述。
通过这些 XML 模式,我可以确定某个结果必须是什么数据类型,并且客户端可以在向用户呈现数据时使用该信息,或者当客户端要求用户更改属性时。 (顺便说一句,如何退出另一个问题,因为我找不到任何支持 XSD 模式的 XML 多平台 Delphi 实现......但就像我说的:这是另一个问题)。
替代方法是使用 JSON 响应类型,但是客户端无法确定属性的特定数据类型,因为所有内容都作为字符串发送。
客户如何知道其中一个属性是来自枚举类型的索引、整数、数量或通过其 ID 对另一个对象的引用? (这些只是例子) 我认为客户端不应该包含有关响应结构的“硬编码”信息,还是我假设错误?
【问题讨论】:
-
“硬编码”信息是您的应用程序应该知道的上下文。在不知道 HumptiDumpti 是什么的情况下获得 42 是 HumptiDumpti 枚举的信息有什么好处?如果你得到答案,你应该知道问题和上下文。