我正在向服务器发送jQuery AJAX请求,但是浏览器的控制台告诉我找不到该页面。仍然,我的Spring MVC签名映射了所请求的URL,但是仍然没有执行AJAX函数的done部分。

以下是相关代码:

Javascript:

    var content = $(data).filter("#wrapper-email-content");
    $.ajax({
        url : '/sendEmail',
        type : 'POST',
        data : {
            content: content.html()
        }
    }).done(function(){
        console.log("Finished")
    });

Spring MVC签名:
@RequestMapping(value = "/sendEmail", method = RequestMethod.POST)
public void sendEmail(
    HttpServletRequest request, String content) {

    UserTO user = (UserTO) request.getSession().getAttribute("USER");
    String email = user.getEmail();
    String title = "Your order";
    Email.sendEmail(title, email, content, null, null, null);
}

因此,在代码中,发送了电子邮件,这意味着执行sendEmail方法,但是我仍然收到错误404:从AJAX请求中找不到,并且控制台中未打印“完成”。

我究竟做错了什么?

最佳答案

更好的解决方案是使用

@ResponseStatus(value = HttpStatus.OK)

有关示例,请参见答案https://stackoverflow.com/a/12839817/954602

10-04 22:30
查看更多