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


CookieHandler Класс

Определение

Предоставляет абстрактный базовый класс для операций чтения, записи и удаления файла " Cookie " сеанса клиента HTTP.

public ref class CookieHandler abstract
public abstract class CookieHandler
type CookieHandler = class
Public MustInherit Class CookieHandler
Наследование
CookieHandler
Производный

Примеры

В следующем примере sam настраивается для использования пользовательского обработчика файлов cookie типа MyNamespace.MyCustomCookieHandler.

<cookieHandler mode="Custom">  
    <customCookieHandler type="MyNamespace.MyCustomCookieHandler, MyAssembly" />  
</cookieHandler>  

Комментарии

( SessionAuthenticationModule SAM) использует экземпляр класса для CookieHandler чтения, записи и удаления файлов cookie или файлов cookie, содержащих SessionSecurityToken на HTTP-клиенте. Файл cookie (или файлы cookie, если маркер сеанса разделен на несколько файлов cookie), содержащий маркер сеанса, называется файлом cookie сеанса.

Windows Identity Foundation (WIF) поставляется с обработчиком файлов cookie, который называется обработчиком фрагментированных файлов cookie, который реализуется классом ChunkedCookieHandler . Обработчик файлов cookie с фрагментами разделяет маркер сеанса между одним или несколькими файлами cookie в соответствии с указанным размером блока. Это необходимо для соблюдения ограничений размера отдельных файлов cookie, налагаемых многими браузерами.

Вы можете наследовать от CookieHandler , чтобы создать собственный обработчик файлов cookie. При этом необходимо переопределить DeleteCoreметоды , ReadCoreи WriteCore , чтобы выполнить фактическую работу по удалению, чтению и записи файла cookie сеанса. Эти методы обычно считывают файл cookie из HttpRequest.Cookies коллекции и записывают или удаляют файлы cookie через коллекцию HttpResponse.Cookies . Объект HttpContext , с помощью которого можно получить доступ к запросу и ответу, предоставляется в качестве параметра для каждого из этих методов. Помимо обязательных методов, при необходимости можно переопределить другие свойства виртуальных методов, предоставляемые классом CookieHandler , чтобы настроить поведение обработчика.

Класс предоставляет CookieHandler несколько свойств, которые определяют поведение по умолчанию и свойства для файла cookie сеанса. Свойства Name, Domainи Path предоставляют базовое имя файла cookie, домен, в котором он действителен, и путь, по которому он хранится на клиенте. Свойство HideFromClientScript указывает, доступен ли файл cookie клиентским сценариям. Свойство RequireSsl указывает, следует ли передавать файл cookie только через безопасные подключения (HTTPS). Если задано значение , PersistentSessionLifetime свойство используется для задания срока действия для постоянных сеансов, то есть для сеансов, которые остаются действительными даже после закрытия браузера. Все эти свойства имеют эквивалентные свойства, которые обычно задаются в базовом HttpCookie объекте (или объектах) основными методами обработчика. Дополнительные сведения см. в документации по каждому свойству.

Обработчик файлов cookie, используемый SAM, можно указать в конфигурации с помощью <элемента cookieHandler> . Обработчик файлов cookie, заданный этим элементом, можно изменить в делегате события для FederatedAuthentication.FederationConfigurationCreated события или задать или получить к нему доступ напрямую через SessionAuthenticationModule.CookieHandler свойство .

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

CookieHandler()

Вызывается из конструкторов в производных классах для инициализации класса CookieHandler.

Свойства

Domain

Получает или задает домен, используемое для файлов cookie.

HideFromClientScript

Получает или задает значение, указывающее, следует ли скрывать файл cookie от клиентского скрипта.

Name

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

Path

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

PersistentSessionLifetime

Время существования постоянных сеансов. Если значение равно нулю, всегда используются временные сеансы.

RequireSsl

Получает или задает значение, которое указывает, должны ли файлы cookie использоваться только с SSL.

Методы

Delete()

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

Delete(HttpContext)

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

Delete(String)

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

Delete(String, HttpContext)

Удаляет файл cookie, связанный с заданным запросом, имеющий заданное имя и домен и путь по умолчанию.

Delete(String, String, String, HttpContext)

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

DeleteCore(String, String, String, HttpContext)

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

Equals(Object)

Определяет, равен ли указанный объект текущему объекту.

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

Служит хэш-функцией по умолчанию.

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

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

(Унаследовано от Object)
MatchCookiePath(Uri, Uri)

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

MemberwiseClone()

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

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

Считывает файл cookie, связанный с текущим запросом, имеющий имя по умолчанию.

Read(HttpContext)

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

Read(String)

Считывает файл cookie, связанный с текущим запросом, имеющий указанное имя.

Read(String, HttpContext)

Считывает файл cookie, связанный с заданным запросом, имеющий заданное имя и домен и путь по умолчанию.

ReadCore(String, HttpContext)

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

ToString()

Возвращает строку, представляющую текущий объект.

(Унаследовано от Object)
Write(Byte[], Boolean, DateTime)

Записывает связанный с текущим запросом файл cookie, имеющий заданные значение, сохраняемость и срок действия.

Write(Byte[], String, DateTime)

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

Write(Byte[], String, DateTime, HttpContext)

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

Write(Byte[], String, String, String, DateTime, Boolean, Boolean, HttpContext)

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

WriteCore(Byte[], String, String, String, DateTime, Boolean, Boolean, HttpContext)

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

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

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