JSP服务器什么时候将cookie发送给客户端?一次请求中在一个组件中创建了Cookie,在另外一个组件中能接收到值么?
来源:互联网 发布:凉宫春日的消失 知乎 编辑:程序博客网 时间:2024/05/12 16:53
答:不能 !
如果一个组件创建了Cookie,然后 转发 给了另外一个servlet 或 JSP 或 其它组件,那么该 转发后的地方获取不到刚刚定义的Cookie,因为转发共享数据,在本web应用内完成,共享同一个request和response,当web应用内一个组件创建了一个Cookie,并绑定到response上时,这个时候进行了转发 操作,这个时候服务器并没有将Cookie提交给客户端, 而是提交将该cookie随着response转交给了下一个组件 ,这个时候如果通过request.getCookies获取Cookie是 获取不到的,因为服务器还没有将cookie提交给客户端 这个时候的request更是用户初始的请求,没有绑定任何相关的cookie。
而如果是重定向就可以,因为重定向是两次请求,在重定向过程中已经将cookie提交给客户端,第二次发过来请求的时候,可以通过第二次的request获取到cookie。
这个也从另外一个角度说明了是当response销毁时才将 cookie发送给客户端。
如果一个组件创建了Cookie,然后 转发 给了另外一个servlet 或 JSP 或 其它组件,那么该 转发后的地方获取不到刚刚定义的Cookie,因为转发共享数据,在本web应用内完成,共享同一个request和response,当web应用内一个组件创建了一个Cookie,并绑定到response上时,这个时候进行了转发 操作,这个时候服务器并没有将Cookie提交给客户端, 而是提交将该cookie随着response转交给了下一个组件 ,这个时候如果通过request.getCookies获取Cookie是 获取不到的,因为服务器还没有将cookie提交给客户端 这个时候的request更是用户初始的请求,没有绑定任何相关的cookie。
而如果是重定向就可以,因为重定向是两次请求,在重定向过程中已经将cookie提交给客户端,第二次发过来请求的时候,可以通过第二次的request获取到cookie。
这个也从另外一个角度说明了是当response销毁时才将 cookie发送给客户端。
0 0
- JSP服务器什么时候将cookie发送给客户端?一次请求中在一个组件中创建了Cookie,在另外一个组件中能接收到值么?
- VB6: 在客户端中使用WinHttp组件,发送Https请求
- 关于在servlet中创建了cookie,但在jsp中无法读取到该cookie的问题(已解决)
- 在jsp中设置cookie
- 在Flex中创建一个不可编辑的NumericStepper组件
- Ext中一次给一个组件注册多个事件
- 如何通过函数在div中插入另外一个jsp
- 在jsp页面中调用另外一个jap页面
- RDP 协议组件 X.224 在协议流中发现一个错误并且中断了客户端连接。
- RDP 协议组件 X.224 在协议流中发现一个错误并且中断了客户端连接
- RDP协议组件X.224在协议流中发现一个错误并且中断了客户端连接办法
- 【在Struts2中加入ajax异步发送请求给服务器】
- 在JSP中如何设置/删除COOKIE?
- 一个在vbscript中读取cookie的程序函数
- 自己写的一个mail发送组件,可以直接在程序中调用。
- 如何在COM组件接口方法中返回一个字符串给js?
- 如何在unity游戏运行过程中给GameObject添加一个组件
- 在Android中启动另外一个应用
- 中文转拼音的首字母映射
- log4net配置(转自 http://blog.sina.com.cn/s/blog_6d1c583c01010tf3.html )
- JAVAscript入门经典---笔记2 math 数组等方法
- 板卡调试笔记
- MVVM Light需要注意的10个问题
- JSP服务器什么时候将cookie发送给客户端?一次请求中在一个组件中创建了Cookie,在另外一个组件中能接收到值么?
- 数组array
- lua 代码的断点调试
- 浮点数在计算机中是如何表示的?
- linux 更改时区与时间的方法
- Android开发之Intent.Action
- 图解classloader加载class的流程及自定义ClassLoader
- [FAQ10763] 在中文简体状态下无法修改默认引擎,默认引擎一直都是百度
- js 字符串转换成数字的三种方法