我正在开发一个带有 spa 前端的 .net 核心 oAuth 控制器。
上有邮递路线[HttpPost("~/connect/logout"), ValidateAntiForgeryToken]
。我希望这个 url 的 get 路由回退到 spa 应用程序。当前,.net 给出了不允许的 405 方法,如果同一路由有 post 方法。
如何制定回退到水疗服务的获取路线?
我试过添加endpoints.MapFallbackToFile("/index.html");
,但这给出了 404。
启动.cs
public void ConfigureServices(IServiceCollection services)
{
services.AddSpaStaticFiles(configuration => { configuration.RootPath = "ClientApp/build"; });
services.AddControllers();
...
}
public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
}
app.UseStaticFiles();
app.UseSpaStaticFiles();
app.UseRouting();
app.UseAuthentication();
app.UseAuthorization();
app.UseEndpoints(endpoints =>
{
endpoints.MapControllerRoute(
name: "default",
pattern: "{controller}/{action=Index}/{id?}");
// endpoints.MapFallbackToFile("/index.html");
// endpoints.MapFallbackToFile("{**slug}", "index.html");
});
app.UseSpa(spa =>
{
spa.Options.SourcePath = "ClientApp";
if (env.IsDevelopment())
{
spa.UseProxyToSpaDevelopmentServer("http://localhost:3000");
}
});