【问题标题】:How can I get the value of the request parameters "j_username" and "j_password"?如何获取请求参数“j_username”和“j_password”的值?
【发布时间】:2010-03-31 09:37:58
【问题描述】:

我想知道如何获取请求参数“j_username”和“j_password”的值?

使用基于表单的身份验证成功登录后,我希望我的 servlet 获取参数“j_username”和“j_password”的值,但我在这两个参数中都获得了 null 作为值。谁能告诉我如何获得这两个参数的实际值?

Servlet 类:

package foo;

import javax.servlet.http.*;
import javax.servlet.*;


public class RequestHandler extends HttpServlet
{



 public void doGet(HttpServletRequest request, HttpServletResponse response)
 { 
  try
  {
   String user = request.getParameter("j_username");
   String password = request.getParameter("j_password");
          response.getWriter().println(user+" "+password);
  }
  catch(Exception e)
  {
   e.printStackTrace();
  }



 }
}

输出:null null

【问题讨论】:

    标签: java servlets


    【解决方案1】:

    你可以通过getRemoteUser()getUserPrincipal()获取用户名,后者也可能让你在转换为具体类后获取密码,但我对此表示怀疑。您的应用程序不需要知道密码或对密码做任何事情..

    【讨论】:

    • 我实际上想制作邮件应用程序,并创建会话我必须获取用户名和密码。你知道有什么更好的方法吗?
    【解决方案2】:

    尝试使用

    request.getUserPrincipal().getName(); 
    

    改为在成功登录后访问用户名。

    【讨论】:

      【解决方案3】:

      您确定在表单中使用GET 吗?您是否尝试使用 doPost 代替?

      【讨论】:

        猜你喜欢
        • 2011-01-29
        • 2015-05-01
        • 1970-01-01
        • 1970-01-01
        • 2014-04-18
        • 2022-12-03
        • 2022-08-19
        • 2023-04-05
        • 2017-03-08
        相关资源
        最近更新 更多