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, имеющий заданные имя, значение, домен, путь, срок действия, сохраняемость и видимость. |