原写于2010-11-08
题记:一个cookie,整个下午都没有找到解决的办法
一、遇到的问题
1. 情景:访问http://list.mall.daily.taobao.net/50024400/xxx,当前页面通过ajax请求广告,请求的域为http://tmatch.simba.taobao.com/xxx;广告引擎向页面种seesion范围的cookie名_back,用于标识翻页;
2. 问题:
点击当前页面的翻页,IE下广告不翻页?通过firebug与httpwatch对比,发现IE下cookie“_back”不正确。开始猜测是引擎种cookie的逻辑存在问题,但很多地方都在使用此接口,均没有问题。
且有人的机器翻页正常,此时怀疑是浏览器设置问题?再用httpwatch观察“http请求头”,发现_back没有回传给引擎(其实httpwatch的cookies也可以观察到,如果发送cookie的话,会显示为Sent;之前只观察到Received)? 确认是浏览器的问题。
3. 解决:打开IE隐私设计,通常默认设置为“中”,拒绝“没有隐私政策的第三方cookie ...”,意味着_back并没有成功写入客户端,所有请求引擎导致不能正确回传_back,翻页失败。
这么说淘宝所有的广告的翻页都是不可用的 ?肯定不是。问题在”第一方 Cookie 来自您正浏览的网站,它们可以是永久的或临时的;第三方 Cookie 来自您正浏览的网站上的其他网站的广告”,对于浏览器“taobao.net与taobao.com”就是不同的两个网站,所以引擎的_back是无法种在客户端。此情景是daliy环境,线上的环境访问的是list.mall.daily.taobao.com,所以不存在“第三方cookie”的概念,广告是可以正确显示。
二、关于cookie小知识
1.IE Cookie的格式
第一行“名称”,第二行“值”,第三行“所属域” ...比如“.taobao.com”存在cna,此cookie会被浏览器自动发送到任何属于此域的子域;www.taobao.com\taobao.com,后面的是根域,前一个是二级域。xp存放目录为:C:\Documents and Settings\<username>\Cookies\,文件命名:你的用户名@生成COOKIE的domain[COOKIE改变的次数].txt
参考:http://blog.csdn.net/zhangxinrun/archive/2010/07/31/5779574.aspx
2.Js Cookie跨域访问
http://blog.csdn.net/tongdoudpj/archive/2009/05/10/4166096.aspx
3.cookie与session的关系
根本的原因:http协议的无状态性,cookie的出现就是为了解决这个问题。
session是一种在客户端与服务器之间保持状态的解决方案。服务端存储内容,返回对应的key给客户端,当下次访问时,带上此key,实现状态的维持。
session实现:
1.依赖cookie,The session cookie is stored in temporary memory and is not retained after the browser is closed。(实际测试:IE8,未在1描述的位置找到session级别cookie对应的文件,猜测‘临时存储在浏览器内存’,当关闭浏览器时则丢失key)
2.url重写。Servlet规范定义此功能。当浏览器禁用cookie时,就算session级别的内容也不会被存储。resp.encodeRedirectURL(url)(The implementation of this method includes the logic to determine whether the session ID needs to be encoded in the URL.),且仅当禁用cookie时有效,重写结果如:http://www.demo.com/cookie.do;jsessionid=19gfy1sg740dl1whwd72lbqlhb
疑问:server如何判断,是否需要重写呢?从实验现象看,判断是否收到name=JSESSIONID 的cookie,若无,则进行url重写。最好的方式,翻翻tomcat、jetty的源码实现,但未找到对应的代码。
关于cookie的详细信息参见: http://en.wikipedia.org/wiki/HTTP_cookie
相关推荐
互相伤害互相卷,玩命学习要你管,天生我才必有用,我命由我不由天! 2023年8月验证,无BUG 本系列校训 用免费公开视频,卷飞培训班哈人!打死不报班,赚钱靠狠干! 只要自己有电脑,前后项目都能搞!N年苦学无人问...
互相伤害互相卷,玩命学习要你管,天生我才必有用,我命由我不由天! 喜欢的朋友还可以自己查到本站的N多毕业设计与课程设计, 如果错误或其它需要请留言!或发邮件至8195819@qq.com 本系列校训 用免费公开视频,卷...
互相伤害互相卷,玩命学习要你管,天生我才必有用,我命由我不由天! 喜欢的朋友还可以自己查到本站的N多毕业设计与课程设计, 如果错误或其它需要请留言!或发邮件至8195819@qq.com 2023年8月验证,无BUG 本系列...
基于Java的视频会议系统(程序...互相伤害互相卷,玩命学习要你管,天生我才必有用,我命由我不由天! 喜欢的朋友还可以自己查到本站的N多毕业设计与课程设计, 如果错误或其它需要请留言!或发邮件至8195819@qq.com ...
基于JAVA的网络通讯系统设计与...互相伤害互相卷,玩命学习要你管,天生我才必有用,我命由我不由天! 喜欢的朋友还可以自己查到本站的N多毕业设计与课程设计, 如果错误或其它需要请留言!或发邮件至8195819@qq.com ...
微信小程序碰到情人节-我们结婚吧---【小程序花园】 ... 2023年8月验证,无BUG 本系列校训 用免费公开视频,卷飞培训班哈人!打死不报班,赚钱靠狠干...互相伤害互相卷,玩命学习要你管,天生我才必有用,我命由我不由天!
5.3版的FastStone Capture与论文...互相伤害互相卷,玩命学习要你管,天生我才必有用,我命由我不由天! 喜欢的朋友还可以自己查到本站的N多毕业设计与课程设计, 如果错误或其它需要请留言!或发邮件至8195819@qq.com
2023年8月验证,无BUG ...互相伤害互相卷,玩命学习要你管,天生我才必有用,我命由我不由天! 喜欢的朋友还可以自己查到本站的N多毕业设计与课程设计, 如果错误或其它需要请留言!或发邮件至8195819@qq.com
SpringBoot项目碰到layui怎么用...互相伤害互相卷,玩命学习要你管,天生我才必有用,我命由我不由天! 喜欢的朋友还可以自己查到本站的N多毕业设计与课程设计, 如果错误或其它需要请留言!或发邮件至8195819@qq.com
2023年8月验证,无BUG ...互相伤害互相卷,玩命学习要你管,天生我才必有用,我命由我不由天! 喜欢的朋友还可以自己查到本站的N多毕业设计与课程设计, 如果错误或其它需要请留言!或发邮件至8195819@qq.com
JAVA struts+hibernate实现的网络...互相伤害互相卷,玩命学习要你管,天生我才必有用,我命由我不由天! 喜欢的朋友还可以自己查到本站的N多毕业设计与课程设计, 如果错误或其它需要请留言!或发邮件至8195819@qq.com
JAVA学生住宿管理系统 ...互相伤害互相卷,玩命学习要你管,天生我才必有用,我命由我不由天! 喜欢的朋友还可以自己查到本站的N多毕业设计与课程设计, 如果错误或其它需要请留言!或发邮件至8195819@qq.com
JAVA文件传输(源代码) ...互相伤害互相卷,玩命学习要你管,天生我才必有用,我命由我不由天! 喜欢的朋友还可以自己查到本站的N多毕业设计与课程设计, 如果错误或其它需要请留言!或发邮件至8195819@qq.com
JAVA班级管理系统(源码) ...互相伤害互相卷,玩命学习要你管,天生我才必有用,我命由我不由天! 喜欢的朋友还可以自己查到本站的N多毕业设计与课程设计, 如果错误或其它需要请留言!或发邮件至8195819@qq.com
JAVA基于J2ME的贪吃蛇游戏源代码 ...互相伤害互相卷,玩命学习要你管,天生我才必有用,我命由我不由天! 喜欢的朋友还可以自己查到本站的N多毕业设计与课程设计, 如果错误或其它需要请留言!或发邮件至8195819@qq.com
JAVA贪吃蛇游戏毕业设计(源代码) ...互相伤害互相卷,玩命学习要你管,天生我才必有用,我命由我不由天! 喜欢的朋友还可以自己查到本站的N多毕业设计与课程设计, 如果错误或其它需要请留言!或发邮件至8195819@qq.com
JAVA银行帐目管理系统(源代码) ...互相伤害互相卷,玩命学习要你管,天生我才必有用,我命由我不由天! 喜欢的朋友还可以自己查到本站的N多毕业设计与课程设计, 如果错误或其它需要请留言!或发邮件至8195819@qq.com
JAVA作业管理系统设计(源代码) ...互相伤害互相卷,玩命学习要你管,天生我才必有用,我命由我不由天! 喜欢的朋友还可以自己查到本站的N多毕业设计与课程设计, 如果错误或其它需要请留言!或发邮件至8195819@qq.com
基于Javamail的邮件收发系统...互相伤害互相卷,玩命学习要你管,天生我才必有用,我命由我不由天! 喜欢的朋友还可以自己查到本站的N多毕业设计与课程设计, 如果错误或其它需要请留言!或发邮件至8195819@qq.com
JAVA在线考试管理系统(源代码) ...互相伤害互相卷,玩命学习要你管,天生我才必有用,我命由我不由天! 喜欢的朋友还可以自己查到本站的N多毕业设计与课程设计, 如果错误或其它需要请留言!或发邮件至8195819@qq.com