繁体   English   中英

使用AJAX登录后重定向到JSP页面

[英]Redirect to a JSP page after login using AJAX

我有一个login.jsp页面,用户在其中输入用户名和密码。 用户名和密码使用ajax($ .post)发送到服务器。 认证完成后,我想将用户重定向到index.jsp页面。

js:

function Login()
{
    var traderName = document.getElementById('username').value;
    var traderPass = document.getElementById('password').value;

    //SetLoginLoading();

    data = {action:'login',username:traderName,password:traderPass};

    $.post('TraderServlet',$.param(data),function(response){
    });
    return false;
}

Servlet

     protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
              ....
              login(request, response);
              ....
     }       
   private void login(HttpServletRequest request, HttpServletResponse response) throws IOException {
        String name = request.getParameter(PARAMETER_NAME);
        String pass = request.getParameter(PARAMETER_PASS);
        traderBean.login(name, pass);

        response.sendRedirect("index.jsp");
    }

我试图使用response.sendRedirect(),但是它不起作用。 我应该使用jQuery使用ajaxCallback重定向用户吗?

谢谢。

通常,如果无论如何都将重定向,那么使用AJAX确实没有意义,因为仅通过直接从表单处理servlet就可以实现这一点。

对于您的问题,首先检查servlet的url模式。 确保它实际上是在被调用。 如果是这样,则它的网址格式如下

/TraderServlet

然后,它希望index.jsp也位于Web下的根文件夹中。 可能是您根本没有重定向到期望的位置。

一种检查方法是(如果您使用的是Chrome)(使用调试器工具)(在Windows / Nix上为F12,在Mac上为Ctrl-Shift-I),然后查看它给出了什么错误。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM