小弟新血来潮想研究一下流览器,啊啊  想用winsock自己编写一个 有些问题弄不明白特来请教1 网站登陆后 会有session记录用户的登陆信息。我们知道session是相对浏览器来确认用户身份的,
也就是说: 
A 我启动两个ie 使用相同的用户名登陆同一个网站 他们的session是不一样的(当然可能记录的内容是一样的 阿阿).
B  我启动一个ie 登陆网站,我在IE中 点击一个链接 弹出一个新的IE窗口,新弹出的ie跟原来的IE 他们的session是同一个sessionhttp协议是这样的:
用户请求 -> 服务器响应 ->关闭请求链接所以我想知道 www服务器是怎样实现session机制的? 他是通过什么手段来标示浏览器的 ?
我用winsock来模拟浏览器我需要向www服务器发送什么样的请求才能让 session认识我呢2 我们在访问网站的时候产生cookies. session 和 cookies 有什么联系吗?
  我怎样设置和读取cookies呢 ?
  如果我在同一个一台计算机上使用 N 个用户名 登陆同一个网站,请问这些cookies该怎么管理呢?那位高人了解这方面的情况 望指教 thanks
另 那位大哥有这方面的资料 小弟急需啊啊 祝大家新年快乐 

解决方案 »

  1.   

    www服务器不实现session,session都是ie负责管理的你问的问题有点泛,不知道该怎么回答。
      

  2.   

    多谢 VirtualDesktop(吴滂:欢迎到我的Blog转转 ^_^)  
    啊啊 久闻 吴老大的大名 兴会兴会“www服务器不实现session,session都是ie负责管理的”
    此话怎讲? 还望赐教 多谢
      

  3.   

    嘿嘿,过奖
    session一直存储在ie的当前进程里,服务器需要的时候才会发送
      

  4.   

    具体的说来,webbrowser其实就是ie,管理session的事情他都帮你做了
      

  5.   

    “session一直存储在ie的当前进程里” 
    啊啊
    ie 肯定也是使用sock来访问 www 服务器的。
    我们知道 www服务器在返回应答后是要断开连接的。
    既然断开连接那就应该不能通过连接来确认是哪个浏览器
    个人理解 www服务器肯定 通过 http头 来给浏览器传一个唯一的标识
    每次浏览器都把这个标识传给www服务器,从而确认session
    啊啊 不知道我这么说是不是正确
    如果真是这样 那这个传递的值是什么呢??
    望指教
      

  6.   

    的确如你所说
    你下个flashget 1.7x,看看它下载的时候是怎么向服务器发送消息的你就明白了
      

  7.   

    这个是我抓的浏览器在向IIS提出请求的cookie值
    我做的asp测试页里没有设置cookie但使用了session
    -------------------------------------------------------------------------------
    Cookie: rtime=7; ltime=1167957899375; cnzz_eid=1248940-; cnzz02=0; ASPSESSIONIDSSTQQCQD=FOCMJMFCBFJIDGDMCAKLIJLH; testcookie=testvalue; __utma=220301200.145366406.1167210908.1167872828.1167957893.9; __utmz=220301200.1167210908.1.1.utmccn=(direct)|utmcsr=(direct)|utmcmd=(none); __utmc=220301200
    -------------------------------------------------------------------------------
    请问上面的都代表什么意思
    thanks
      

  8.   

    如果看一下截获的HTTP协议信息,可以看到session是HTTP协议头中的一个域,存放与WEB服务器与客户端(浏览器)会话有关的信息。之所以这么做,是因为HTTP会话不是持续连接的,每个会话完成后会断开,session的作用可以让服务器与客户端看起来像保持着持续的连接。如果理解这一点,就很好解释session的作用了,以及如何对它们进行处理了,比如session的信息可以保存在内存中,但浏览器关闭后会消失,但如果以文件的方式保存,在浏览器向服务器提交请求时,附上该信息,就可以让web服务器知道客户端,在一定程度上似乎是继续保持以前的连接,这种以文件方式保存的session的内容就是cookie了。
      

  9.   

    啊啊 没有设置cookie只使用了 session 啊啊
    返回的http头里出现这一条:
    Set-Cookie: ASPSESSIONIDSSTQQCQD=HLFMJMFCJNMOOBOBIFBBBCAK; path=/在IIS中
    提交时把 Cookie: ASPSESSIONIDSSTQQCQD=HLFMJMFCJNMOOBOBIFBBBCAK 
    返回去就OK了下一步试一试在Apache里怎么样啊啊
      

  10.   

    浏览器接到什么样的指令才去设置cookies
    cookies 和 session 在浏览器提交给服务器的时侯 格式有什么不同呢
      

  11.   

    浏览器接到什么样的指令才去设置cookies1)浏览器的安全设置中允许设置cookie
    2)服务器传过来的http头中有session
      

  12.   

    啊啊 现在基本功能已经实现了 不过浏览器在提交请求的时候http头中的cookie项 是通过加密的 不是很清楚怎么加密的:
    Accept-Language: zh-cn
    Accept-Encoding: gzip, deflate
    ...
    Cookie: s_cc=true; s_sq=gaiainteractiveprod%3D%2526pid%253Dhttp%25253A//www.gaiaonline.com/forum/viewtopic.php%25253Fmode%25253Dnews%2526oid%253Dhttp%25253A//www.gaiaonline.com/gaia/login.php%25253Flogout%25253Dtrue%252526redirect%25253Dhttp%2525253A%2525252F%2525252Fwww.gaiaonline.com%2525252Fforu%2526ot%253DA%2526oi%253D141; gaia2_t=a%3A1%3A%7Bi%3A21403589%3Bi%3A1168302875%3B%7D; gaia2_sid=9082de7a1f1cfa7d82b18b964aa910f2对面的服务器是 : Apache+PHP请问这个是什么编码方式呀 ??根据我分析呢
    %25253A 这个是":" 
    %25253F 这个是"?"
    啊啊 
      

  13.   

    楼主需要看的是HTTP协议的白皮书,你想了解的内容里面都有。