+ -
当前位置:首页 → 问答吧 → 在三级域名下将顶级域名作为cookie写入三级域名的cookie下的问题【网易的例子,高分求教】

在三级域名下将顶级域名作为cookie写入三级域名的cookie下的问题【网易的例子,高分求教】

时间:2011-08-30

来源:互联网

在网易的三级域名comment.news.163.com下登录 用户名和密码;
登录成功后,通过debug查看cookie,发现储存的cookie部分内容如下
JScript code

Name                     Value                     Domain                    Path
NTES_PASSPORT   LAstoPqmUeTor3NKNGGH_nXXX          .163.com                    /
PT              KOKSIIIWIKWIWIksiqiwiiqiwi          .oimagea7.ydstatic.com      /



于是我在自己电脑上配置了相同的四个域名 163.com,www.163.com , news.163.com,comment.news.163.com。

然后在三级域名comment.news.163.com下做同样的模拟登录(cookie的写入)代码如下
JScript code

function setCookie(name, value, time) {
    var strsec = getsec(time);
    var exp = new Date();
    exp.setTime(exp.getTime() + strsec * 1);
    document.cookie = name + "=" + escape(value) + ";path=/;domain=163.com;expires=" + exp.toGMTString();
}



问题是,如果写入的domain是顶级域名(domain=163.com)那么,cookie怎么都写不进去,如果是二级域名(domain=news.163.com),那么cookie就可以正确的写入到三级域名comment.news.163.com下;

请问,需要怎样修改,在三级域名下,可以将顶级域名作为cookie写到此三级域名的cookie下呢?
而且,163还可以将别人的domain(oimagea7.ydstatic.com)写到自己的域名下。。。。。

求赐教,万分感谢,分不够,可以继续增加。
谢谢。

作者: java_ee   发布时间: 2011-08-30

嘿嘿,LZ看清楚!

domain = .163.com

作者: danica7773   发布时间: 2011-08-31

我真的没有看出来这里面的意义,虽然我思考了十多分钟。
如果仅是为了模拟登录的话,我用C#写过,就是将cookie保存再下一次请求时再向服务器发出!!

我不能理解

电脑上配置了相同的四个域名
是指修改hosts文件,将163.com映射到127.0.0.1的吗?

楼主到底是做什么?????

作者: truelove12   发布时间: 2011-08-31