如何在 Razor 页面中响应 404 http 状态代码相应重定向到客户 404 页面?

问题描述 投票:0回答:1

块引用

就我而言,我在 cshtml 页面后面的 OnGet() 方法中获得了一个永久链接,并在数据库中查找该永久链接是否有记录。如果为 true,则将返回正确的页面,但如果为 false,我想发送 http 状态代码 404,然后重定向到具有 200 http 代码状态的自定义 404 页面。 请注意,我不想使用永久 301 或临时 302 状态代码进行重定向。重要的是响应 404 状态代码,然后使用 200 状态代码进行重定向。 那么如何在 Asp.net Core Razor 页面(.Net6)中实现它 如果有任何帮助代码或建议,我将不胜感激。 以下是此重定向的期望结果形式的屏幕截图以及状态代码。

http-status-code-404 .net-6.0 razor-pages http-redirect c#-10.0
1个回答
0
投票

只需将 HttpContext StatusCode 响应设置为 404

public IActionResult OnGet()
  {
      HttpContext.Response.StatusCode = 404;
      //Or
      HttpContext.Response.StatusCode = StatusCodes.Status404NotFound;

      return Page();
  }
© www.soinside.com 2019 - 2024. All rights reserved.