Web API URL设计和实现

时间:2013-10-03 20:39:54

标签: deployment routing asp.net-web-api

通常会看到有关API网址设计的建议,其中网址采用“/ api / v1 / resource”格式,然后当API更改时,我们可以更改为/ api / v2等。

现在,必须以某种方式实施。有很多选择:

  • 在Web服务器的根目录下部署项目,并让路由规则负责处理/ api / v1部分
  • 将项目部署在/ api /子文件夹(虚拟目录)中,路由规则负责/ v1,/ v2等部分,但不知道URL的/ api /部分。
  • 将项目部署在/ api / v1子文件夹(虚拟目录)中。新版本的API是一个新项目,单独部署。该项目严格处理资源作为根概念,但通常不了解/ api / vX部分。

那么,你会选择哪种方法,为什么?

此致 丹尼尔

1 个答案:

答案 0 :(得分:0)

我已将项目部署在子文件夹的根目录下,让我的路由规则处理版本控制路由。如果我想部署到不支持我的实现方法的环境,我希望尽可能少地依赖我的托管环境实现我的实现。

SDammann.WebApi.Versioning是我在其中一个应用程序中实现此目的的解决方案。

然而ASP.NET and Web Tools for Visual Studio 2013 Release会让这更容易。