我正在尝试使用AJAX进行POST调用。这是我的控制器:
@RequestMapping(method = RequestMethod.POST, value = "/submitsignup")
@ResponseBody
public String persistSignupData(@RequestBody SignupModel signupModel) {
signupDaoImpl.persistSignupData(signupModel);
return "success";
}
使用Javascript:
$(document).ready(function() {
$("#password2").keyup(checkPasswordMatch);
$('#signup-button').click(function() {
$.ajax({
type: "POST",
url: "/cinestop/submitsignup",
data: JSON.stringify(getFormDataJSON()),
contentType: "application/json",
dataType: "json"
});
});
});
当我拨打电话时,会返回404。到目前为止,我一直无法调试此问题。我做错了什么?
答案 0 :(得分:1)
避免对JSON进行字符串化,因为您期望的datatType是JSON。
@Cache
def fibonacci(n):
return n if n in (0, 1) else fibonacci(n - 1) + fibonacci(n - 2)
答案 1 :(得分:1)
当我拨打电话时,会返回404。
你确定你在你的ajax部分放了正确的网址吗? HTTP错误404通常意味着您要求的文档无法加载,因为它
相关代码的引用
url: "/cinestop/submitsignup",
@RequestMapping(method = RequestMethod.POST, value = "/submitsignup")
答案 2 :(得分:1)
首先尝试逐步调试应用程序
从postman
,curl
或任何其他其他客户端尝试点击post
调用,有效负载正文为空JSON
。如果这也返回404,那么是一个服务器问题。如果它成功或抛出任何java错误,那么我们知道它是UI错误。还要确保将内容类型标题添加为“application/json'
这将有助于隔离问题并帮助我们快速解决问题
答案 3 :(得分:0)
尝试运行此解决方案:
var settings = {
"url": "/cinestop/submitsignup",
"method": "POST",
"headers": {
"Content-Type": "application/json"
},
"data": getFormDataJSON()
}
$.ajax(settings).done(function (response) {
console.log(response);
});