Прочитать на английском

Поделиться через


Cookie Класс

Определение

Предоставляет набор свойств и методов, которые используются для управления файлами cookie. Этот класс не наследуется.

public sealed class Cookie
[System.Serializable]
public sealed class Cookie
Наследование
Cookie
Атрибуты

Примеры

В следующем примере отправляется запрос на URL-адрес и отображаются файлы 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
*/

Комментарии

Класс Cookie используется клиентским приложением для получения сведений о файлах cookie, полученных с помощью HTTP-ответов. При анализе заголовков HTTP-ответов поддерживаются следующие форматы файлов cookie: исходная спецификация Netscape, RFC 2109 и RFC 2965.

Список начальных значений свойств для экземпляра Cookieсм. в разделе Различные Cookie конструкторы.

Конструкторы

Cookie()

Инициализирует новый экземпляр класса Cookie.

Cookie(String, String)

Инициализирует новый экземпляр класса Cookie с заданными объектами Name и Value.

Cookie(String, String, String)

Инициализирует новый экземпляр класса Cookie с заданными объектами Name, Value и Path.

Cookie(String, String, String, String)

Инициализирует новый экземпляр класса Cookie с заданными объектами Name, Value, Path и Domain.

Свойства

Comment

Возвращает или задает комментарий, который сервер может добавлять в Cookie.

CommentUri

Возвращает или задает комментарий URI, который сервер может предоставлять с Cookie.

Discard

Возвращает или задает флаг сброса, задаваемый сервером.

Domain

Возвращает или задает URI, для которого Cookie является допустимым.

Expired

Возвращает или задает текущее состояние Cookie.

Expires

Возвращает или задает для Cookie дату и время окончания действия в виде DateTime.

HttpOnly

Определяет, может ли получить доступ к файлу cookie скрипт страницы или другое активное содержимое.

Name

Возвращает или задает имя Cookie.

Path

Возвращает или задает идентификаторы URI, к которым применяется Cookie.

Port

Возвращает или задает список TCP-портов, к которым применяется Cookie.

Secure

Возвращает или задает уровень безопасности Cookie.

TimeStamp

Возвращает время выпуска файла cookie в виде DateTime.

Value

Возвращает или задает Value для объекта Cookie.

Version

Возвращает или задает версию поддержки запоминания состояния HTTP, которой соответствует файл cookie.

Методы

Equals(Object)

Переопределяет метод Equals(Object).

GetHashCode()

Переопределяет метод GetHashCode().

GetType()

Возвращает объект Type для текущего экземпляра.

(Унаследовано от Object)
MemberwiseClone()

Создает неполную копию текущего объекта Object.

(Унаследовано от Object)
ToString()

Переопределяет метод ToString().

Применяется к

Продукт Версии
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

См. также раздел