重定向到自定義錯誤頁面
ASP.NET Core 提供了狀態內碼表中介軟體 ,它支援幾種不同的擴充套件方法,但我們對 UseStatusCodePages
和 UseStatusCodePagesWithRedirects
感興趣:
-
UseStatusCodePages 新增一個 StatusCodePages 中介軟體,其中包含給定的選項,用於檢查狀態程式碼在 400 和 599 之間且沒有正文的響應。用於重定向的示例:
app.UseStatusCodePages(async context => { //context.HttpContext.Response.StatusCode contains the status code // your redirect logic });
-
UseStatusCodePagesWithRedirects 將一個 StatusCodePages 中介軟體新增到管道。指定應通過使用給定位置 URL 模板重定向來處理響應。這可能包括狀態程式碼的“{0}”佔位符。以“〜”開頭的網址將預先新增 PathBase,其中任何其他網址都將按原樣使用。例如,以下將重定向到〜/ errors / <error_code>(例如〜/ errors / 403 表示 403 錯誤):
app.UseStatusCodePagesWithRedirects("~/errors/{0}");