版本控制WebAPI接口的推荐做法

JP.*_*JP. 9 asp.net-mvc asp.net-web-api

我想使用WebAPI作为我的API技术:

  • 允许获得批准的公司在我的系统中输入/检索数据
  • 为我公司的iOS/Android /等创建标准界面.应用

有没有人知道用于实现接口版本控制的最佳实践和机制.具体来说,如果我对API进行更新,我不想破坏向后兼容性.我想知道人们使用什么版本控制方案,以及WebAPI是否有任何支持版本控制的内置机制,而不需要在每次发布新版本时都设置路由/路径.任何想法将不胜感激.

更新 在进行一些研究后,我想我知道自己想做什么,我不知道该怎么做.理想情况下,在内容协商期间,我想使用用户传递的媒体类型来指定应该使用哪个版本的API(而不是硬编码URL)并点击相应的控制器.

Chr*_*her 3

如果您不希望版本包含在 Url 中,则可行的方法可能是实现 IHttpControllerSelector。这篇博文应该为您提供一个良好的起点:Implementing API versioning in ASP.NET Web API