HttpWebRequest.CookieContainer 属性
获取或设置与此请求关联的 cookie。
[Visual Basic] Public Property CookieContainer As CookieContainer [C#] public CookieContainer CookieContainer {get; set;} [C++] public: __property CookieContainer* get_CookieContainer(); public: __property void set_CookieContainer(CookieContainer*); [JScript] public function get CookieContainer() : CookieContainer; public function set CookieContainer(CookieContainer);
属性值
包含与此请求关联的 cookie 的 CookieContainer。
备注
CookieContainer 属性提供 CookieContainer 类的一个实例,该实例包含与此请求关联的 cookie。
默认情况下,CookieContainer 为空引用(Visual Basic 中为 Nothing)。必须将 CookieContainer 实例分配给该属性以在由 GetResponse 返回的 HttpWebResponse 的 Cookies 属性中返回 Cookie。
示例
[Visual Basic, C#] 以下示例向 URL 发送请求并在响应中显示返回的 Cookie。
[Visual Basic] Imports System.Net Imports System ' This example is run at the command line. ' Specify one argument: the name of the host to ' receive the request. ' If the request is sucessful, the example displays the contents of the cookies ' returned by the host. Public Class CookieExample Public Shared Sub Main(args() As String) If args Is Nothing OrElse args.Length <> 1 Then Console.WriteLine("Specify the URL to receive the request.") Environment.Exit(1) End If Dim request As HttpWebRequest = CType(WebRequest.Create(args(0)), HttpWebRequest) request.CookieContainer = New CookieContainer() Dim response As HttpWebResponse = CType(request.GetResponse(), HttpWebResponse) response.Cookies = request.CookieContainer.GetCookies(request.RequestUri) ' Print the properties of each cookie. Dim cook As Cookie For Each cook In response.Cookies Console.WriteLine("Cookie:") Console.WriteLine("{0} = {1}", cook.Name, cook.Value) Console.WriteLine("Domain: {0}", cook.Domain) Console.WriteLine("Path: {0}", cook.Path) Console.WriteLine("Port: {0}", cook.Port) Console.WriteLine("Secure: {0}", cook.Secure) Console.WriteLine("When issued: {0}", cook.TimeStamp) Console.WriteLine("Expires: {0} (expired? {1})", cook.Expires, cook.Expired) Console.WriteLine("Don't save: {0}", cook.Discard) Console.WriteLine("Comment: {0}", cook.Comment) Console.WriteLine("Uri for comments: {0}", cook.CommentUri) Console.WriteLine("Version: RFC {0}", IIf(cook.Version = 1, "2109", "2965")) ' Show the string representation of the cookie. Console.WriteLine("String: {0}", cook.ToString()) Next cook End Sub 'Main End Class 'CookieExample ' Output from this example will be vary depending on the host name specified, ' but will be similar to the following. ' 'Cookie: 'CustomerID = 13xyz 'Domain: .contoso.com 'Path: / 'Port: 'Secure: False 'When issued: 1/14/2003 3:20:57 PM 'Expires: 1/17/2013 11:14:07 AM (expired? False) 'Don't save: False 'Comment: 'Uri for comments: 'Version: RFC 2965 'String: CustomerID = 13xyz ' [C#] using System.Net; using System; namespace Examples.System.Net.Cookies { // This example is run at the command line. // Specify one argument: the name of the host to // send the request to. // If the request is sucessful, the example displays the contents of the cookies // returned by the host. public class CookieExample { public static void Main(string[] args) { if (args == null || args.Length != 1) { Console.WriteLine("Specify the URL to receive the request."); Environment.Exit(1); } HttpWebRequest request = (HttpWebRequest)WebRequest.Create(args[0]); request.CookieContainer = new CookieContainer(); HttpWebResponse response = (HttpWebResponse) request.GetResponse(); response.Cookies = request.CookieContainer.GetCookies(request.RequestUri); // Print the properties of each cookie. foreach (Cookie cook in response.Cookies) { Console.WriteLine("Cookie:"); Console.WriteLine("{0} = {1}", cook.Name, cook.Value); Console.WriteLine("Domain: {0}", cook.Domain); Console.WriteLine("Path: {0}", cook.Path); Console.WriteLine("Port: {0}", cook.Port); Console.WriteLine("Secure: {0}", cook.Secure); Console.WriteLine("When issued: {0}", cook.TimeStamp); Console.WriteLine("Expires: {0} (expired? {1})", cook.Expires, cook.Expired); Console.WriteLine("Don't save: {0}", cook.Discard); Console.WriteLine("Comment: {0}", cook.Comment); Console.WriteLine("Uri for comments: {0}", cook.CommentUri); Console.WriteLine("Version: RFC {0}" , cook.Version == 1 ? "2109" : "2965"); // Show the string representation of the cookie. Console.WriteLine ("String: {0}", cook.ToString()); } } } } // Output from this example will be vary depending on the host name specified, // but will be similar to the following. /* Cookie: CustomerID = 13xyz Domain: .contoso.com Path: / Port: Secure: False When issued: 1/14/2003 3:20:57 PM Expires: 1/17/2013 11:14:07 AM (expired? False) Don't save: False Comment: Uri for comments: Version: RFC 2965 String: CustomerID = 13xyz */
[C++, JScript] 没有可用于 C++ 或 JScript 的示例。若要查看 Visual Basic 或 C# 示例,请单击页左上角的“语言筛选器”按钮 。
要求
平台: Windows 98, Windows NT 4.0, Windows ME, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 系列