我使用的是Jquery 1.4.4和Spring 3.0。这真的很奇怪。当我以GET类型提交AJAX请求时,不会调用spring控制器。但是,对于使用POST方法时的相同请求,控制器会成功调用。除了使用POST与GET方法之外,没有其他变化。有人可以帮忙 - 我错过了什么吗?这是我的JS和控制器代码。
基于fiddler提交的网址是: http://localhost:8680/fxiapi/auth/login {%22user%22:%22dd%22%22pass%22:%22ss%22%22org%22:%22dd%22}?
$.ajax({
url: '/fxiapi/auth/login',
type: 'GET',
data: JSON.stringify({"user":uname,"pass":pswd,"org":org}),
dataType: "json",
contentType: "application/json; charset=UTF-8",
processData: false,
beforeSend: function(x) {
if (x && x.overrideMimeType) {
x.overrideMimeType("application/json;charset=UTF-8");
}
},
success: function(data) {
this.authToken = data.authToken;
},
error: function() {
alert('you are not authenticated');
}
});
@RequestMapping(value = "/login", method = RequestMethod.GET)
public
@ResponseBody
LoginResponse login(@RequestBody LoginRequest loginData, HttpServletResponse response) {
return null;
}
}