课程
/后端开发
/Java
/JAVA遇见HTML——JSP篇
如题 根据 老师在6-4的讲解 自己用forward 和 sendRedirect来试了一下 结果 请求转发 要刷新一次才有cookie的值 而重定向就直接可以获得 这是为什么?
2016-12-19
源自:JAVA遇见HTML——JSP篇 6-4
正在回答
因为传过去的request还是原来的那个request,这个request中的cookie还没有值,所以转发传过去的cookie还没有值,当刷新或者重定向了,那么request是另一个新的了,是重新得到的值,所以重定向和刷新可以,转发不可以
我也遇到了同样的问题,应该是cookie保存后在下一次访问服务器页面时才有效,请求转发并不改变网页名,比如你在dologin.jsp请求转发,网址并不改变,说明没有打开其他页面,所以cookie此时无效。所以你如果用请求转发,那就用内置request对象获得账号密码,如果你用请求重定向,才可以用cookie
重定向相当于重新发出一个新的请求,相当于从服务器重新取,相当于刷新了
举报
Java Web入门级教程JSP,带你轻松的学习JSP基础知识
1 回答自己用forward 和 sendRedirect来试了一下 结果 请求转发 要刷新一次才有cookie的值 而重定向就直接可以获得 这是为什么?
2 回答请求重定向和请求转发的区别
1 回答关于请求重定向和请求转发
1 回答请求转发使用的是post,却是明文URL,没有得到到封装
4 回答cookie保存后取值总是上一次的