为了账号安全,请及时绑定邮箱和手机立即绑定

请求重定向之后依旧有对象数据

请求重定向

客户端行为,response.sendRedirect(),从本质上讲等同于两次请求,前一次的请求对象不会保存,地址栏的URL地址会改变。

请求转发

服务器行为,request.getRequestDispatcher().forward(req,resp);是一次请求,转发后请求对象会保存,地址栏的URL地址不会改变。

if("admin".equals(username) && "admin".equals(password)){	
    session.setAttribute("loginuser", username);	
    //request.getRequestDispatcher("login_succes.jsp").forward(request, response);	
    response.sendRedirect("login_succes.jsp");
    }else{	
        response.sendRedirect("login_failure.jsp");
        }

我把请求转发注释掉,改成请求重定向,发现url的确变了,但是http://img1.sycdn.imooc.com//5d9057ac00012e8104510068.jpg用户名admin还有,按照定义,重定向不应该会把对象数据消除么?

正在回答

2 回答

因为session.setAttribute("loginuser",username);获取了对象属性值

0 回复 有任何疑惑可以回复我~

你设置了session

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

请求重定向之后依旧有对象数据

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信