簡體   English   中英

如何從JQuery Ajax調用中調用Spring MVC控制器

[英]How To Call Spring MVC Controller From JQuery Ajax Call

我試圖從JQuery ajax調用中調用Spring控制器方法,但它無法導航到相應的視圖。

首先,我通過從ajax調用中調用authenticateLogin()Spring控制器函數來驗證登錄詳細信息,成功驗證后,我需要將請求轉發到相應的視圖頁面,我嘗試使用以下代碼,但未導航至另一頁面。

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";
}

請在您的路徑中添加/

網址:CONTEXT_PATH +“ / authenticateLogin”,

嗨,朋友,我沒有評論權限,所以只需回答您的問題即可。如果它是GET Type請求,請評論它的數據部分,並將其從java side @ModelAttribute("loginDO") Login login刪除,否則請@ModelAttribute("loginDO") Login login POST並檢查任何CSRF出於安全考慮,令牌是否存在。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM