如何将 Swashbuckle 与 Angular 2 .net Core 2 应用程序一起使用

How to use Swashbuckle with Angular 2 .net Core 2 app

我正在尝试在 .net core 2 angular 项目上设置 swashbuckle。

此项目是使用 cli 中的 dotnet new angular 模板生成的。

我已经根据 swashbuckle 指南向 startup.cs class 添加了正确的内容,但是 angular2 正在处理 /swagger 路由并重定向回主页,因为 ' **'路线。

知道如何让 swashbuckle 使用 angular 2 dotnet 项目吗?

我通过从配置方法中删除回退 spa 路由并根据此 github 问题创建 .MapWhen 来修复此问题: https://github.com/aspnet/JavaScriptServices/issues/973

  app.UseMvc(routes =>
        {
            routes.MapRoute(
                name: "default",
                template: "{controller=Home}/{action=Index}/{id?}");
            /*

            routes.MapSpaFallbackRoute(
                name: "spa-fallback",
                defaults: new { controller = "Home", action = "Index" });
                */ 
        });

  app.MapWhen(x => !x.Request.Path.Value.StartsWith("/swagger"), builder =>
        {
            builder.UseMvc(routes =>
            {
                routes.MapSpaFallbackRoute(
                    name: "spa-fallback",
                    defaults: new { controller = "Home", action = "Index" });
            });
        });