在网易的三级域名comment.news.163.com下登录 用户名和密码;
登录成功后,通过debug查看cookie,发现储存的cookie部分内容如下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的写入)代码如下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)写到自己的域名下。。求赐教,万分感谢,分不够,可以继续增加。
谢谢。

解决方案 »

  1.   

    嘿嘿,LZ看清楚!domain = .163.com
      

  2.   

    我真的没有看出来这里面的意义,虽然我思考了十多分钟。
    如果仅是为了模拟登录的话,我用C#写过,就是将cookie保存再下一次请求时再向服务器发出!!我不能理解电脑上配置了相同的四个域名
    是指修改hosts文件,将163.com映射到127.0.0.1的吗?楼主到底是做什么?????