2016-08-01 62 views
-2

这是REST API接口上的一个通用问题。我的应用程序中有一个包含实体和值对象的域模型。目前从REST服务实现中使用相同的域模型,并且REST请求/响应结构也具有这些实体和值对象的引用。为REST输入/输出建立单独的对象结构还是使用内部域对象构造请求和响应对象是好的主意。REST API接口指南

回答

0

当涉及到REST API接口时,它不应该也不应该如何实现应用程序层。当然,在接口,应用程序和数据层中使用的对象模型之间会有很多重叠。但那是因为他们在功能上代表了同一个系统。应用层实现不能影响你的API接口本身。

下面的参考对于REST API设计来说非常全面。
https://github.com/Microsoft/api-guidelines/blob/master/Guidelines.md

而且Apigee有一个很不错

https://pages.apigee.com/rs/apigee/images/api-design-ebook-2012-03.pdf

0

很明显,您可以在REST资源对象和服务的内部域模型之间提供一个抽象层。这是否有意义取决于您的应用程序设计。我只能说,如果您期望内部域模型发生变化,但希望通过外部API维护一致的资源表示,那么是的,这是个好主意。不过,您可能会等到发生这种变化时才投入时间来抽象它。