我通过 jquery ajax 调用向我的 spring 控制器发送一个值。我希望它发回一个对象以填充 iziModal 中的表单。目前,它将值从浏览器发送回我的控制器,并在我的控制器中运行我的方法,但后来我卡住了。出于某种原因,我在将响应发送回我的 ajax 成功函数时遇到问题。我收到此解析错误:SyntaxError: Unexpected token t in JSON at position 1556482
这是我的控制器方法:
@RequestMapping(value="/editCarrierAjax", method= RequestMethod.POST)
public @ResponseBody CarrierAppointment getCarrierDets (@RequestParam("data") String data, MasterCarrier masterCarrier, Model model) throws Exception{
CarrierAppointment carrierToEdit = carrierAppointmentRepository.findById(Long.parseLong(data));
model.addAttribute("carrierToEdit", carrierToEdit);
return carrierToEdit;
}
阿贾克斯调用:
$('.trigger-edit-carrier').on('click', function(event){
var selectId = $(this).attr('value');
console.log(selectId);
var token = $("meta[name='_csrf']").attr("content");
console.log(token);
var header = "X-CSRF-TOKEN";
console.log(header);
$.ajax({
type: "POST",
url: "/editCarrierAjax",
data: {data:selectId},
dataType:"json",
cache: false,
timeout: 600000,
beforeSend: function(xhr) {
xhr.setRequestHeader(header, token);
console.log(header +", "+ token);
},
success: function(data, jqXHR){
console.log("success fn");
console.log(data);
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
alert("Status: " + textStatus); alert("Error: " + errorThrown);
}
});
});
我尝试添加这里提到的 Jackson 库Convert a object into JSON in REST service by Spring MVC
但它仍然会引发错误。知道如何解决此错误吗?