1
這是我在我的JavaScript文件:AJAX調用不將數據發送到控制器的方法
$(document).ready(function() {
$('#add-be-submit').click(function (event) {
event.preventDefault();
$.ajax({
type: 'POST',
url: '/snapdragon/blog/new',
data: JSON.stringify({
EntryName: $('#add-be-title').val(),
EntryBody: CKEDITOR.instances.addBeBody.getData()
}),
contentType: 'application/json; charset=utf-8',
headers: {
'Accept': 'application/json',
'Content-Type': 'application/json'
},
dataType: 'json'
}).success(function (data, status) {
$('#add-be-title').val('');
CKEDITOR.instances.addBeBody.getData('');
});
});
這是我在我的控制器:
/* ---------- ADD BLOG ENTRTY ---------- */
@RequestMapping(value = "/new", method = RequestMethod.POST)
@ResponseStatus(HttpStatus.CREATED)
public void addBlogEntry(@Valid @RequestBody BlogEntry entry) {
dao.addBlogEntry(entry);
}
控制器本身具有RequestMapping設置爲「/ blog」。我找不到問題。我在「dao.addBlogEntry(entry)」上設置了一個斷點,並發現傳入的對象的EntryName和EntryBody的值爲空值。但是,當我在JavaScript控制檯中檢查「$('#add-be-title').val()」和「CKEDITOR.instances.addBeBody.getData()」的值時,它們具有正確的值。
任何想法?
什麼在http://yourserver.com/snapdragon/blog/new迴歸變量瀏覽器如果允許GET – mplungjan
可能是瀏覽器開發工具中的檢查請求消息。我的意思是devTools中的Network/Net標籤。你可以找到你的請求消息,頭文件等等。 –
當我允許GET時出現400錯誤請求錯誤,而500內部服務器出現上述錯誤。 500錯誤讀取,**「HTTP狀態500 - 請求處理失敗;嵌套異常是org.springframework.dao.DataIntegrityViolationException:** –