"deployUrl": "https://example.com/my-app/"
将其删除或注释掉。
app.UseWhen(context => context.Request.Path.StartsWithSegments("/my-app"), appBuilder =>
{
appBuilder.UseMiddleware
其中 /my-app 表示 Angular 应用的路径,可以根据实际情况进行修改。
public class AngularRoutingMiddleware { private readonly RequestDelegate _next;
public AngularRoutingMiddleware(RequestDelegate next)
{
_next = next;
}
public async Task InvokeAsync(HttpContext context)
{
await _next(context);
if (context.Response.StatusCode == 404 && !Path.HasExtension(context.Request.Path.Value))
{
context.Request.Path = "/my-app/index.html";
context.Response.StatusCode = 200;
await _next(context);
}
}
}