在 Java 中重定向到具有 404 状态代码的 URL
Redirect to a URL with 404 status code in Java
如何使用 404 状态代码将 http 请求重定向到特定 URL。我正在使用
Response.sendRedirect("/404userfriendlypage")
请求的 URL 的响应代码是 301,而我需要它是 404。然后重定向到这个用户友好的错误页面。
提前致谢。
使用此语法在您的 spring 控制器中重定向
return "redirect:/urlNotExist";
以上重定向将向客户端提供 404,因为“/urlNotExist”路由没有映射。
现在您可以在客户端编写代码以重定向到用户友好的错误页面。或者简单地设置一个 @ControllerAdvice 用于服务器端重定向到用户友好的错误页面。
简单的解决方案java.
使用简单的重定向 Response.sendRedirect("path");
Response.sendRedirect("/404Genratingpage")
并在状态为 404 或其他一些条件时重定向到自定义错误页面。您需要覆盖 Response.sendRedirect 方法。
public class CustomResponseWrapper extends HttpServletResponseWrapper {
@Override
public void sendRedirect(String location) {
//custom logic to redirect to a user friendly error page.
super.sendRedirect(request.getContextPath()+"/404userfriendlypage.jsp");
}
}
对于您的 404 或任何其他状态,请尝试在您的 404userfriendlypage.jsp.
中设置响应状态,如下所示
<%response.setStatus(404);%>
我已经使用下面的代码解决了这个问题。
Response.sendError(HttpServletResponse.SC_NOT_FOUND);
为请求的 url 向前端发送 404。在应用程序级别,我们有一个配置,如果 404 代码收到重定向到用户友好的页面。
如何使用 404 状态代码将 http 请求重定向到特定 URL。我正在使用
Response.sendRedirect("/404userfriendlypage")
请求的 URL 的响应代码是 301,而我需要它是 404。然后重定向到这个用户友好的错误页面。
提前致谢。
使用此语法在您的 spring 控制器中重定向
return "redirect:/urlNotExist";
以上重定向将向客户端提供 404,因为“/urlNotExist”路由没有映射。
现在您可以在客户端编写代码以重定向到用户友好的错误页面。或者简单地设置一个 @ControllerAdvice 用于服务器端重定向到用户友好的错误页面。
简单的解决方案java.
使用简单的重定向 Response.sendRedirect("path");
Response.sendRedirect("/404Genratingpage")
并在状态为 404 或其他一些条件时重定向到自定义错误页面。您需要覆盖 Response.sendRedirect 方法。
public class CustomResponseWrapper extends HttpServletResponseWrapper {
@Override
public void sendRedirect(String location) {
//custom logic to redirect to a user friendly error page.
super.sendRedirect(request.getContextPath()+"/404userfriendlypage.jsp");
}
}
对于您的 404 或任何其他状态,请尝试在您的 404userfriendlypage.jsp.
中设置响应状态,如下所示<%response.setStatus(404);%>
我已经使用下面的代码解决了这个问题。
Response.sendError(HttpServletResponse.SC_NOT_FOUND);
为请求的 url 向前端发送 404。在应用程序级别,我们有一个配置,如果 404 代码收到重定向到用户友好的页面。