现在有个问题,就是 无论我是用asp.net 还是 asp 遍历cookie集合,什么结果也没有
   代码应该没问题,都是很成熟的代码。请问,问题可能出在哪里呢?急

解决方案 »

  1.   

    HttpCookie c;
    string subKeyName;
    string subKeyValue;
    for(int i = 0; i < Request.Cookies.Count;i++)
    {
      c = Request.Cookies[i];
      if (c.HasKeys)
      {
      for (int j = 0; j < c.Values.Count - 1; j++ )
      {
      subKeyName = Server.HtmlEncode(c.Values.AllKeys[j]);
      subKeyValue = Server.HtmlEncode(c.Values[j]);
      Response.Write("subKeyName = " + subKeyName + ", subKeyValue = " + subKeyValue + "<br />");
      }
      }
      else
      Response.Write(c.Name + " " + c.Value + "<br />");   
    }
      

  2.   

    [Quote=引用 1 楼 wuyq11 的回复:]
    不行啊,按理说应该出来一个列表吧,我的浏览器是空白
      

  3.   

    是否有cookie值
    贴出代码看看
      

  4.   

    <%
    For Each objItem In Request.Cookies
    If Request.Cookies(objItem).HasKeys Then
       For Each objItemKey in Request.Cookies(objItem)
        Response.Write objItem & "(" & objItemKey & ") = "& Request.Cookies(objItem)(objItemKey) & "<BR>"
       Next
    Else
       Response.Write objItem & " = " & Request.Cookies(objItem) & "<BR>"
    End If
    Next
    %>
    这是ASP代码 什么结果也没有
    你给的代码,就一行值 编码过的,也不对。
    我没有禁用cookie,都可以找到好多cookie文件
    我用的iis5.1 难道是服务器的问题? 但是用 asp.net 也取不到值,唉
      

  5.   

    二楼的代码应该是对地,但请注意一点,在ASP中设置的cookie代有下划线,那么在.net中是读不出来的,无论你如何设置它们的编码也没有用的!!
      

  6.   


           ArrayList cookiesList = new ArrayList();//创建一个集合
            for (int i = 0; i < Request.Cookies.Count; i++)//遍历cookies
            {
                cookiesList.Add(Request.Cookies[i]);//添加到集合
            }
            GridView1.DataSource = cookiesList;//控件绑定
            GridView1.DataBind();
    <asp:GridView ID="GridView1" runat="server">
            
    </asp:GridView>你先自己添加几个cookie试试:
    Response.Cookies["xiao00"].Value = asod;
    输出结果
    Name Path Secure HttpOnly Domain Expires Value HasKeys 
    xiao00 /     0001-1-1 0:00:00 asod