我目前正在努力应对我们的服务设计。我们使用许多CRUD操作构建LOB应用程序。我们首先使用ASP.NET Web API开始。
我们遇到的一个问题是我们有许多不同的视图消耗我们的API。每个视图都有不同的要求。例如,视图需要......
我们决定使用OData来解决这个问题,但很快我们遇到了更多问题:
我真的不知道其他公司是如何做到这一点的。对我来说,许多博客文章和教程中描述的“标准REST服务”对于我迄今为止构建的几乎所有LOB应用程序来说都太基础了。可能有效的唯一解决方案是为每个子资源发送HTTP请求:
但这听起来像是一个巨大的可扩展性问题。
一些公司正在研究这个问题:Facebook推出了自己的查询语言和框架(GraphQL / Relay),Netflix正在研究FALCOR。
现在这个问题怎么解决了?不是每个人都在使用OData。
答案 0 :(得分:0)
查询字符串不起作用吗?
GET /api/families/5
GET /api/families/5?view=withMembers
GET /api/families/5?view=view2
...etc