C# 在Core中配置URL重写以获取swagger、API和角度重路由

C# 在Core中配置URL重写以获取swagger、API和角度重路由,c#,asp.net-core,C#,Asp.net Core,我试图在我的Core2应用程序中实现以下行为。如果URL为: 喜欢/swagger,然后转到/swagger(未更改的路径) 类似于/api/*,然后转到/api/*(未更改的路径) 与其他内容一样,请转到/index.html 我一直在尝试以下主题的组合 app.UseRewriter(new RewriteOptions() .AddRewrite("^swagger$", "/swagger", true) .AddRewrite("(^api/.*)", "$1", true

我试图在我的Core2应用程序中实现以下行为。如果URL为:

  • 喜欢/swagger,然后转到/swagger(未更改的路径)
  • 类似于/api/*,然后转到/api/*(未更改的路径)
  • 与其他内容一样,请转到/index.html
我一直在尝试以下主题的组合

app.UseRewriter(new RewriteOptions()
  .AddRewrite("^swagger$", "/swagger", true)
  .AddRewrite("(^api/.*)", "$1", true)
  .AddRewrite(".*", "index.html", true)
);
这似乎不起作用。Swagger反复获得更多/Swagger部分,API没有得到任何回报。我不太清楚代码和行为之间的关系。最后一个参数应该阻止更多规则运行,但事实似乎并非如此


(如果这很重要,我正在尝试让Angular应用程序中的路由正常工作。)

为什么你要重写URL而不是仅仅配置路由?@CamiloTerevinto,因为我以前使用web.config和Core运行过它,我发现它也受支持。同时,目前,我想通过让它以这种方式工作来掌握这个概念。不过,我也很务实,所以如果你有更好的想法,尽管拍吧!