获取或设置与此请求关联的 cookie。
命名空间: System.Net
程序集: System(在 System.dll 中)
语法
Visual Basic(声明)
Public Property CookieContainer As CookieContainer
Visual Basic (用法)
Dim instance As HttpWebRequest
Dim value As CookieContainer
value = instance.CookieContainer
instance.CookieContainer = value
C#
public CookieContainer CookieContainer { get; set; }
Visual C++
public:
property CookieContainer^ CookieContainer {
CookieContainer^ get ();
void set (CookieContainer^ value);
}
J#
/** @property */
public CookieContainer get_CookieContainer()
/** @property */
public void set_CookieContainer(CookieContainer value)
JScript
public function get CookieContainer () : CookieContainer
public function set CookieContainer (value : CookieContainer)
属性值
类型:System.Net..::.CookieContainer
包含与此请求关联的 Cookie 的 CookieContainer。
备注
CookieContainer 属性提供 CookieContainer 类的一个实例,该实例包含与此请求关联的 cookie。
默认情况下,CookieContainer 为 nullNothingnullptrnull 引用(在 Visual Basic 中为 Nothing)。必须将 CookieContainer 对象分配给该属性以在由 GetResponse 方法返回的 HttpWebResponse 的 Cookies 属性中返回 Cookie。
说明:
为安全起见,默认情况下禁用 Cookie。如果您希望使用 Cookie,请使用 CookieContainer 属性启用 Cookie。
示例
下面的代码示例向 URL 发送请求并在响应中显示返回的 Cookie。
Visual Basic
复制代码
Imports System.Net
Imports System
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)
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"))
Console.WriteLine("String: {0}", cook.ToString())
Next cook
End Sub
End Class
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();
// 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
Comment:
Uri for comments:
Version: RFC 2965
String: CustomerID = 13xyz
*/
Visual C++
复制代码
#using <System.dll>
using namespace System;
using namespace System::Net;
// 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.
int main()
{
array<String^>^args = Environment::GetCommandLineArgs();
if ( args == nullptr || args->Length != 2 )
{
Console::WriteLine( "Specify the URL to receive the request." );
Environment::Exit( 1 );
}
HttpWebRequest^ request = dynamic_cast<HttpWebRequest^>(WebRequest::Create( args[ 1 ] ));
request->CookieContainer = gcnew CookieContainer;
HttpWebResponse^ response = dynamic_cast<HttpWebResponse^>(request->GetResponse());
response->Cookies = request->CookieContainer->GetCookies( request->RequestUri );
// Print the properties of each cookie.
System::Collections::IEnumerator^ myEnum = response->Cookies->GetEnumerator();
while ( myEnum->MoveNext() )
{
Cookie^ cook = safe_cast<Cookie^>(myEnum->Current);
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 ? (String^)"2109" : "2965" );
// Show the string representation of the cookie.
Console::WriteLine( "String: {0}", cook );
}
}
// 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
Comment:
Uri for comments:
Version: RFC 2965
String: CustomerID = 13xyz
*/