我试图从JQuery ajax调用中调用Spring控制器方法,但它没有导航到相应的视图。
首先我通过从ajax调用调用authenticateLogin()Spring控制器函数来验证登录详细信息,成功验证后我需要将请求转发到相应的视图页面,我已经尝试使用下面的代码,但它没有导航到另一个页面。 / p>
Javascript功能:
function authenticatePricingCalcLogin() {
var login = {
userName : $("#username").val(),
password : $("#password").val()
};
$.ajax({type: "POST",
url: CONTEXT_PATH+"authenticateLogin",
data:JSON.stringify(login),
contentType : 'application/json; charset=utf-8',
dataType : 'json',
success: function (response) {
if (response != null) {
if (response.errorMsg != null && response.errorMsg != "") { // Login Error
alert(response.errorMsg);
} else {
// Here i need to call spring controller method and to redirect to another page
// I have tried
$.ajax({type: "GET",
url: CONTEXT_PATH+"navigateMainPage",
data:JSON.stringify(loginDO),
contentType : 'application/json; charset=utf-8',
dataType : 'json'
});
}
}
}
});
}
AuthController.java
@RequestMapping(value = "/authenticateLogin", method = RequestMethod.POST)
public @ResponseBody LoginDO authenticateLogin(@RequestBody Login login){
return authService.authenticateLogin(loginDO);
}
@RequestMapping(value = "/navigateMainPage", method = RequestMethod.GET)
public String navigateMainPage(@ModelAttribute("loginDO") Login login,HttpServletRequest request, Model model) {
try {
// Need to set User Name in session variable
} catch (Exception e) {
}
return "auth/mainPage";
}
答案 0 :(得分:0)
请在路径中添加/
url:CONTEXT_PATH +“/ authenticateLogin”,
答案 1 :(得分:0)
你好朋友我没有评论权限所以只回答你的问题。如果是GET
请注释数据部分输入请求并从java端@ModelAttribute("loginDO") Login login
删除它,否则只需将它POST
1}}并检查任何CSRF令牌是否安全。