Ral*_*ine 3 asp.net-core angular
我正在运行 ASP.NET Core MVC 来进行 API 调用。路由: api/* 还运行 Angular 5.x 及其自己的路由模型。
运行 localhost 效果很好(Core 运行端口 5000 和 Angular 4200)。但当该项目在 Azure 上发布时,所有内容都在端口 443 上运行。
当应用程序发布时,所有路由都会经过 ASPNET Core 路由,在深度链接时会导致 404 。
如何配置 ApplicationBuilder 将 Angular 路由重定向到 Angular?
API 链接:
角度链接:
当从主页 (/) 页面移动并使用角度路由时,用户会重定向到有效的 /event/{key}。刷新 (F5) 时,API 路由启动并返回 404(因为 api 无法理解)。
这是修复:
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
app.UseMvc(); // <-- moved to top (was on bottom)
app.UseStatusCodePagesWithReExecute("/"); // <-- added to redirect to angular
app.UseDefaultFiles();
app.UseStaticFiles();
}
Run Code Online (Sandbox Code Playgroud)
添加app.UseStatusCodePagesWithReExecute()修复了路由问题。
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
app.UseMvc(); // <-- moved to top (was on bottom)
app.UseStatusCodePagesWithReExecute("/"); // <-- added to redirect to angular
app.UseDefaultFiles();
app.UseStaticFiles();
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2127 次 |
| 最近记录: |