维护团队中的Web API一致性

时间:2016-08-05 13:44:29

标签: c# asp.net asp.net-web-api asp.net-web-api2

请随时修改此问题的标题。

我是使用AngularJS和Web API开发Web应用程序的团队的一员。我们为每个页面开发了Web API,并通过Angular获取数据。 过了一段时间,我们意识到大多数Web API是相同的,因为我们无法意识到哪些Web API已经存在。在某些情况下,我们有相同的API,但路线不同。 例如,在ShowOrderDetail.html中,我们需要显示用户的个人资料信息。开发人员实现Web API以从UserProfile检索数据(仅3个字段)。但是,在其他页面中,另一个开发人员实现另一个API来检索5个字段

我想知道您是否在设计这类系统方面有任何其他经验以及如何处理此问题。是否有其他技术或工具而不是管理方面(如设置名称约定)?

1 个答案:

答案 0 :(得分:1)

为同一个项目创建大量单独的服务并没有多大意义,而且为网站中的每个单独页面创建一个完全独立的Web API肯定是过分的。 。无论您使用其他方式组织代码(工具,命名约定等),这都会导致大量冗余和浪费。

我建议您根据自己定期执行的操作重新组织服务,就每页一项服务而言。您可以创建单独的控制器来将您的服务组织到不同类型的操作中(事实上,我建议您 - this article对组织代码的不同方式有很好的描述)但是这应该按照术语组织可重复使用的操作,就单个页面而言。