Visual Studio 中创建 Web API 之后,在 App_Start/WebApiConfig.cs 中,会找到一个默认的路由配置,示例:
public static class WebApiConfig { public static void Register(HttpConfiguration config) { // Web API 配置和服务 // Web API 路由 config.MapHttpAttributeRoutes(); config.Routes.MapHttpRoute( name: "DefaultApi", routeTemplate: "api/{controller}/{id}", defaults: new { id = RouteParameter.Optional } ); } }
注意 routeTemplate,我们访问的时候地址即是:http://xxx/api/Controller/。
比如 Controller 类名称是 ItpowController,则访问是:http://xxx/api/Itpow/。
我倒是觉得路由中这个 api 是没有必要加的
我们通常部署到网站时,是以应用程序的形式部署的,比如是部署在 api 这个应用程序下的,那么访问时,网址中就得是 http://xxx/api/api/Itpow/。有两个 api,多不爽啊。
有人说,你是以应用程序部署的,如果你是直接部署在网站根目录下呢?既然我这个可以直接部署在网站根目录下,说明这个东西是属于整个网站的了,那加个 api 是不是也是属于多余的呢?