如果你的 Ajax POST 请求总是返回空对象给控制器,可能是由于以下原因:
数据未正确传递给服务器:确保你的数据已正确传递给服务器。你可以使用开发者工具检查网络请求,确保数据已正确发送。
传递的数据格式不正确:确保你的数据以正确的格式传递给服务器。常见的格式包括 JSON 或表单数据。
控制器未正确接收数据:确保你的控制器正确接收数据。你可以在控制器中使用 Request
对象来获取数据。
以下是一个使用 jQuery 的示例代码来发送 Ajax POST 请求,并确保数据以 JSON 格式传递给服务器:
var data = {
key1: value1,
key2: value2
};
$.ajax({
type: "POST",
url: "/your-url",
data: JSON.stringify(data),
contentType: "application/json",
success: function(response) {
console.log(response);
},
error: function(xhr, status, error) {
console.log(error);
}
});
在你的控制器中,你可以使用 Request
对象来获取数据:
@PostMapping("/your-url")
public ResponseEntity> yourControllerMethod(HttpServletRequest request) {
String requestData = request.getReader().lines().collect(Collectors.joining());
// 解析 requestData
// 处理请求
return ResponseEntity.ok().build();
}
请根据你的具体情况调整代码,并确保数据正确传递给服务器和控制器。