Cookie 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
提供一組用於管理 Cookie 的屬性與方法。 此類別無法獲得繼承。
public ref class Cookie sealed
public sealed class Cookie
[System.Serializable]
public sealed class Cookie
type Cookie = class
[<System.Serializable>]
type Cookie = class
Public NotInheritable Class Cookie
- 繼承
-
Cookie
- 屬性
範例
以下範例會向一個網址發送請求,並顯示回應中回傳的 Cookie。
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);
}
var request = (HttpWebRequest)WebRequest.Create(args[0]);
request.CookieContainer = new CookieContainer();
using (var response = (HttpWebResponse) request.GetResponse())
{
// Print the properties of each cookie.
foreach (Cookie cook in response.Cookies)
{
Console.WriteLine("Cookie:");
Console.WriteLine($"{cook.Name} = {cook.Value}");
Console.WriteLine($"Domain: {cook.Domain}");
Console.WriteLine($"Path: {cook.Path}");
Console.WriteLine($"Port: {cook.Port}");
Console.WriteLine($"Secure: {cook.Secure}");
Console.WriteLine($"When issued: {cook.TimeStamp}");
Console.WriteLine($"Expires: {cook.Expires} (expired? {cook.Expired})");
Console.WriteLine($"Don't save: {cook.Discard}");
Console.WriteLine($"Comment: {cook.Comment}");
Console.WriteLine($"Uri for comments: {cook.CommentUri}");
Console.WriteLine($"Version: RFC {(cook.Version == 1 ? 2109 : 2965)}");
// Show the string representation of the cookie.
Console.WriteLine($"String: {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't save: False
Comment:
Uri for comments:
Version: RFC 2965
String: CustomerID = 13xyz
*/
Imports System.Net
' 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 = WebRequest.Create(args(0))
request.CookieContainer = New CookieContainer()
Using response As HttpWebResponse = request.GetResponse()
' Print the properties of each cookie.
For Each cook As Cookie In response.Cookies
Console.WriteLine("Cookie:")
Console.WriteLine($"{cook.Name} = {cook.Value}")
Console.WriteLine($"Domain: {cook.Domain}")
Console.WriteLine($"Path: {cook.Path}")
Console.WriteLine($"Port: {cook.Port}")
Console.WriteLine($"Secure: {cook.Secure}")
Console.WriteLine($"When issued: {cook.TimeStamp}")
Console.WriteLine($"Expires: {cook.Expires} (expired? {cook.Expired})")
Console.WriteLine($"Don't save: {cook.Discard}")
Console.WriteLine($"Comment: {cook.Comment}")
Console.WriteLine($"Uri for comments: {cook.CommentUri}")
Console.WriteLine($"Version: RFC {If(cook.Version = 1, 2109, 2965)}")
' Show the string representation of the cookie.
Console.WriteLine($"String: {cook}")
Next
End Using
End Sub
End Class
' 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
'
備註
此 Cookie 類別被用戶端應用程式用來擷取與 HTTP 回應一同接收的 Cookie 資訊。 在解析 HTTP 回應標頭時,支援以下 cookie 格式:原始 Netscape 規範、RFC 2109 及 RFC 2965。
關於 的 Cookie初始屬性值列表,請參見各種 Cookie 建構子。
建構函式
| 名稱 | Description |
|---|---|
| Cookie() |
初始化 Cookie 類別的新執行個體。 |
| Cookie(String, String, String, String) | |
| Cookie(String, String, String) | |
| Cookie(String, String) |
屬性
| 名稱 | Description |
|---|---|
| Comment |
會取得或設定一個註解,伺服器可以新增 Cookie到 . |
| CommentUri |
會取得或設定一個 URI 註解,伺服器可以提供 Cookie。 |
| Discard |
取得或設定伺服器設定的棄牌旗標。 |
| Domain |
取得或設定 有效的 Cookie URI。 |
| Expired |
取得或設定 的當前狀態 Cookie。 |
| Expires | |
| HttpOnly |
判斷頁面腳本或其他活躍內容是否能存取此 Cookie。 |
| Name |
取得或設定 的名稱。Cookie |
| Path |
取得或設定適用的 Cookie URI。 |
| Port |
取得或設定一套適用 Cookie 的 TCP 埠口清單。 |
| Secure |
取得或設定 的安全等級為 Cookie。 |
| TimeStamp |
取得 cookie 作為 DateTime. |
| Value | |
| Version |
取得或設定 Cookie 所遵循的 HTTP 狀態維護版本。 |
方法
| 名稱 | Description |
|---|---|
| Equals(Object) |
會覆寫這個 Equals(Object) 方法。 |
| GetHashCode() |
會覆寫這個 GetHashCode() 方法。 |
| GetType() |
取得目前實例的 Type。 (繼承來源 Object) |
| MemberwiseClone() |
建立目前 Object的淺層複本。 (繼承來源 Object) |
| ToString() |
會覆寫這個 ToString() 方法。 |