问答详情
源自:6-4 案例:Cookie在登录中的应用

为何请求转发不能得到保存的cookie的值,要刷新一次才有, 而请求重定向却可以直接获得值呢?

如题   根据 老师在6-4的讲解 自己用forward 和 sendRedirect来试了一下  结果 请求转发 要刷新一次才有cookie的值 而重定向就直接可以获得  这是为什么?

提问者:慕粉4310785 2016-12-19 21:10

个回答

  • 拜拜肉
    2018-08-14 10:55:51

    因为传过去的request还是原来的那个request,这个request中的cookie还没有值,所以转发传过去的cookie还没有值,当刷新或者重定向了,那么request是另一个新的了,是重新得到的值,所以重定向和刷新可以,转发不可以

  • 慕粉4369313
    2017-07-02 10:47:38

    我也遇到了同样的问题,应该是cookie保存后在下一次访问服务器页面时才有效,请求转发并不改变网页名,比如你在dologin.jsp请求转发,网址并不改变,说明没有打开其他页面,所以cookie此时无效。所以你如果用请求转发,那就用内置request对象获得账号密码,如果你用请求重定向,才可以用cookie

  • 馨儿不黑
    2016-12-20 13:13:47

    重定向相当于重新发出一个新的请求,相当于从服务器重新取,相当于刷新了