现在
★★★难题见真功★★要多少分给多少分,这贴在CSDN一天了也没人答上是咋么回事 有169分了,不够,我再去申请一个号,我再加,就求一个明白人给一个全面的解释

解决方案 »

  1.   

    再加上100分,累计369分,★★★难题见真功★★要多少分给多少分,这贴在CSDN一天了也没人答上是咋么回事 帖子在:
    http://community.csdn.net/Expert/topic/5306/5306780.xml?temp=.6806452
      

  2.   

    因为Asp.Net为了在用户禁用cookie的情况下也能正常使用cookie,所以在默认设置下,cookie信息会用<Input type="hidden">这种方式实现cookie的传递.所以只要你在第一个页面里设置了cookie,它会把cookie保存在隐藏按钮中,第二个页面是能够获取到cookie值的.
    如果你直接打开第二个页面,由于你禁止了cookie,所以cookie不会保存到本机,当然你就获取不到.
    当然你可以进行设置,禁止使用隐藏按钮或者url存储cookie.另外,你需要了解http协议到底是怎么样工作的,而不是只是表面上怎么使用.在http协议中,cookie是必须的,通过头信息set-cookie来设置cookie. 这是http协议的一部分.
    在http协议中没有session这种东西,session只是一种临时的cookie.你设定禁止cookie,准确的说是禁止在本地"保存"cookie,对于session, 对于页面携带的cookie,不受这个影响.
      

  3.   

    shrinerain(圣影雨),谢谢你的答复,看了您的话,让我有了一些了解,但是我还是想不明白,在单独打开一个IE的情况下,输入127.0.0.1的情况下,也是有的同样的方法传值,为什么就收不Cookie呢
      

  4.   

    shrinerain(圣影雨),您在  “因为Asp.Net为了在用户禁用cookie的情况下也能正常使用cookie,所以在默认设置下,cookie信息会用<Input type="hidden">这种方式实现cookie的传递.所以只要你在第一个页面里设置了cookie,它会把cookie保存在隐藏按钮中,第二个页面是能够获取到cookie值的.
    如果你直接打开第二个页面,由于你禁止了cookie,所以cookie不会保存到本机,当然你就获取不到.
    当然你可以进行设置,禁止使用隐藏按钮或者url存储cookie.”中很好的解释了,在那个帖子里用“server.execute”方法什么能得到Cookie的原因,但是您没看到前半部,它也用同样的控件,只是用Response.Rediect方法,仅得不到Cookie的原因,请您再给分析一下,好吗,谢谢
      

  5.   

    shrinerain(圣影雨)您还在看CSDN吗?