ASP.NET WebAPI默认登录页面

God*_*ent 17 asp.net asp.net-mvc asp.net-web-api asp.net-web-api2

我使用ASP.NET WebApi v2创建了一个RESTful Web服务,我使用Swashbuckle为API文档生成了一个swagger UI.

所有API调用都在http:// localhost/api /下,并且swagger UI页面位于http:// localhost/browser/index('browser'部分是可配置的).

浏览到http:// localhost /但是会落在空白页面上,所以我的问题是可以将http:// localhost /路由到http:// localhost/browser/index,这样用户就可以看到API文档只需访问基础uri.

我能想到的一个解决方案是使用一个物理文件系统并创建一个静态的html页面,它会将meta重新定向到我想要的登陆页面,但我想必须有一个更好的方法来做到这一点......

Kar*_*sen 16

更改路由配置RouteConfig.cs.

而不是默认设置:

routes.MapRoute(
    name: "Default",
    url: "{controller}/{action}/{id}",
    defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
Run Code Online (Sandbox Code Playgroud)

改变它指向招摇:

routes.MapRoute(
    name: "Default",
    url: "{controller}/{action}/{id}",
    defaults: new { controller = "Browser", action = "Index", id = UrlParameter.Optional }
);
Run Code Online (Sandbox Code Playgroud)

确保您更新,RouteConfig.cs而不是WebApiConfig.cs.