HttpRequest.Cookies HttpRequest.Cookies HttpRequest.Cookies HttpRequest.Cookies Property

定义

获取客户端发送的 cookie 的集合。Gets a collection of cookies sent by the client.

public:
 property System::Web::HttpCookieCollection ^ Cookies { System::Web::HttpCookieCollection ^ get(); };
public System.Web.HttpCookieCollection Cookies { get; }
member this.Cookies : System.Web.HttpCookieCollection
Public ReadOnly Property Cookies As HttpCookieCollection

属性值

表示客户端的 cookie 变量的 HttpCookieCollection 对象。An HttpCookieCollection object representing the client's cookie variables.

示例

下面的代码示例循环遍历客户端发送的所有 cookie,并将每个 cookie 的名称、到期日期、安全参数和值发送到 HTTP 输出中。The following code example loops through all cookies sent by the client and sends the name, expiration date, security parameter, and values of each cookie to the HTTP output.

int loop1, loop2;
HttpCookieCollection MyCookieColl;
HttpCookie MyCookie;
 
MyCookieColl = Request.Cookies;

// Capture all cookie names into a string array.
String[] arr1 = MyCookieColl.AllKeys;

// Grab individual cookie objects by cookie name.
for (loop1 = 0; loop1 < arr1.Length; loop1++) 
{
   MyCookie = MyCookieColl[arr1[loop1]];
   Response.Write("Cookie: " + MyCookie.Name + "<br>");
   Response.Write ("Secure:" + MyCookie.Secure + "<br>");
 
   //Grab all values for single cookie into an object array.
   String[] arr2 = MyCookie.Values.AllKeys;

   //Loop through cookie Value collection and print all values.
   for (loop2 = 0; loop2 < arr2.Length; loop2++) 
   {
      Response.Write("Value" + loop2 + ": " + Server.HtmlEncode(arr2[loop2]) + "<br>");
   }
}
   
Dim loop1, loop2 As Integer
Dim arr1(), arr2() As String
Dim MyCookieColl As HttpCookieCollection 
Dim MyCookie As HttpCookie

MyCookieColl = Request.Cookies
' Capture all cookie names into a string array.
arr1 = MyCookieColl.AllKeys
' Grab individual cookie objects by cookie name     
for loop1 = 0 To arr1.GetUpperBound(0)
   MyCookie = MyCookieColl(arr1(loop1))
   Response.Write("Cookie: " & MyCookie.Name & "<br>")
           Response.Write("Secure:" & MyCookie.Secure & "<br>")

   ' Grab all values for single cookie into an object array.
   arr2 = MyCookie.Values.AllKeys
   ' Loop through cookie value collection and print all values.
   for loop2 = 0 To arr2.GetUpperBound(0)
      Response.Write("Value " & CStr(loop2) + ": " & Server.HtmlEncode(arr2(loop2)) & "<br>")
   Next loop2
Next loop1
  

注解

ASP.NET 包括两个内部 cookie 集合。ASP.NET includes two intrinsic cookie collections. 通过的Cookies Cookie集合访问的集合包含客户端向标头中的服务器传输的cookie。HttpRequestThe collection accessed through the Cookies collection of HttpRequest contains cookies transmitted by the client to the server in the Cookie header. 通过Cookies Set-CookieHttpResponse集合访问的集合包含在服务器上创建并在标头中传输到客户端的新 cookie。The collection accessed through the Cookies collection of HttpResponse contains new cookies created on the server and transmitted to the client in the Set-Cookie header.

备注

使用HttpResponse.Cookies集合添加 cookie 后,cookie 会立即出现HttpRequest.Cookies在集合中,即使尚未将响应发送到客户端也是如此。After you add a cookie by using the HttpResponse.Cookies collection, the cookie is immediately available in the HttpRequest.Cookies collection, even if the response has not been sent to the client.

适用于

另请参阅