gpt4 book ai didi

java - 如何处理ajax调用的404异常,Spring MVC 3.2,@ControllerAdvice

转载 作者:太空宇宙 更新时间:2023-11-04 07:33:38 25 4
gpt4 key购买 nike

在 Spring MVC 中,如果我使用正常提交提交 Web 表单,我可以在 web.xml 中处理 404 异常

    <error-page>
<error-code>404</error-code>
<location>404.jsp</location>
</error-page>
<error-page>
<exception-type>java.lang.Exception</exception-type>
<location>404.jsp</location>
</error-page>

但是如何拦截来自ajax调用的404错误(可能使用@ControllerAdvice)并将自定义异常传递给jquery中的xhr.responseText

最佳答案

您可以使用默认 Controller 来处理未映射的请求,并在响应中写入您的错误:

@Controller
public class DefaultController {

@RequestMapping
public void unmappedRequest(HttpServletResponse response) throws IOException {
response.setStatus(HttpServletResponse.SC_NOT_FOUND);
response.getWriter().write("404 error mesage");
}
}

然后你可以在 JavaScript 中得到错误:

$.post("/servlet/wrong/url", function() {
alert("success");
})
.fail(function(jqXHR) {
alert(jqXHR.responseText);
});

显然这仅适用于由您的 DispatcherServlet 处理的请求,

关于java - 如何处理ajax调用的404异常,Spring MVC 3.2,@ControllerAdvice,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17322855/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com