Javascript 即使操作成功,Ajax post也会返回404
我正在对我的后台spring控制器进行ajax post调用。我看到post成功地将数据保存在db中,但在浏览器控制台上,我看到post抛出404。此外,一旦调用从spring控制器返回,ajax调用的错误函数就会被调用 有人能告诉我我在这里错过了什么吗Javascript 即使操作成功,Ajax post也会返回404,javascript,ajax,spring-boot,jquery-ajaxq,Javascript,Ajax,Spring Boot,Jquery Ajaxq,我正在对我的后台spring控制器进行ajax post调用。我看到post成功地将数据保存在db中,但在浏览器控制台上,我看到post抛出404。此外,一旦调用从spring控制器返回,ajax调用的错误函数就会被调用 有人能告诉我我在这里错过了什么吗 $('#submitMessage').submit(function(e){ e.preventDefault(); var formData = {}; var msg=document.getElementById
$('#submitMessage').submit(function(e){
e.preventDefault();
var formData = {};
var msg=document.getElementById('iconLeft4-1');
var url = "${context}/wasadmin/support/ajax/send";
formData['comment']=msg.value;
formData['commented_by']='1';
formData['supportId']='1';
formData['userType']='O';
console.log(JSON.stringify(formData));
$.ajax({
type : 'POST',
contentType: "application/json",
url : url,
dataType : 'json',
data:JSON.stringify(formData),
success:function(data,status,xhr){
console.log('saved successfully');
},
error:function(data,status,xhr){
console.log('error occured'); // This gets printed
}
});
控制器
@PostMapping(value="/ajax/send")
public void sendSupportMessage(@RequestBody SupportConversationDTO supportConversationDTO) {
supportConversationService.save(supportConversationDTO);
return;
}
在ajax请求中,您使用的是
数据类型:'json'
,说明中说
// The type of data we expect back
dataType : "json",
但从你的控制器,你是返回无效
您需要更新ajax请求,删除dataType
并更新success:function
$.ajax({
type : 'POST',
contentType: "application/json",
url : url,
data:JSON.stringify(formData),
success:function(data) {
console.log('saved successfully');
},
error:function(data,status,xhr) {
console.log('error occured');
}
});
然后更改控制器代码,从中返回一些内容并添加@ResponseBody
@PostMapping(value="/ajax/send")
@ResponseBody
public String sendSupportMessage(@RequestBody SupportConversationDTO supportConversationDTO) {
supportConversationService.save(supportConversationDTO);
return "success";
}
能否显示控制器的基本映射?