我正在向服务器发送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。