如何将Swagger设置为ABP模板中的默认起始页**而不是/Account/Login
?
我使用的是ASP.NETMVC 5.x+ANGLE 1.x。
更新
当前代码:
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
//ASP.NET Web API Route Config
routes.MapHttpRoute(
name: "swagger_root",
routeTemplate: "",
defaults: null,
constraints: null,
handler: new RedirectHandler((message => message.RequestUri.ToString()), "swagger"));
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
}
一切仍然运行正常,除了模块Zero的"api/Account/Authenticate"
请求已经中断,显示:
找不到该资源。
8条答案
按热度按时间y3bcpkx11#
对于ASP.Net Core>2.2中的REST风格的API,请在项目/属性/调试中设置默认URL
33qvvth12#
在RouteConfig.cs中添加this路由,如下所示:
but5z9lq3#
我知道主要问题是针对ASP.NET MVC的,但对于ASP.NET Core来说,一个很好的解决方案来自于类似问题的回答(使用SwaggerUI):https://stackoverflow.com/a/50127631/1179562
vfhzx4xs4#
我转到解决方案资源管理器面板>属性。在那里我发现了一个名为Launchsettings.json的文件。
在这个文件中,我在找到它的所有部分中将“LaunchUrl”参数的值更改为“swagger/index.html”。
这对我很管用。
nle07wnf5#
在Asp.Net Web Api Core 3.x中,只需执行以下操作(RoutePrefix):
rqqzpn5f6#
我可以通过使用特定的Page>/swagger/ui/index填充项目属性的Start Action来做到这一点
注:我使用的是NuGet的Swashbakle
vxbzzdmp7#
无论是在Visual Studio、IIS Express中,还是在IIS中,我都能很好地使用它。它的目的是创建一个包含以下内容的控制器:
注意:编辑Launchsettings.json文件在Visual Studio中工作得很好,但在IIS上托管应用程序时,它不会像预期的那样工作。
通过这种方式,我发现它比在几个不同位置创建大量配置要干净。
z3yyvxxp8#
对于.Net core 3.1,更改启动设置.json文件中的配置
搜索LaunchSettings.json文件,将属性“LaunchUrl”的值更改为“swagger”。请参阅以下内容: