Класс CookieCollection
Класс-контейнер для куки, используемых в Http\Client.
Обеспечивает функциональность cookie-хранилища для хранения куки между запросами, а также добавления куки к новым запросам.
- Cake\Http\Cookie\CookieCollection реализует IteratorAggregate, Countable
-
Cake\Http\Client\CookieCollection
Устарело: 3.5.0 Используйте Cake\Http\Cookie\CookieCollection вместо этого.
Расположение: Http/Client/CookieCollection.php
Наследуемые свойства
Краткое описание методов
- convertCookieToArray() protectedПреобразует куки в массив его свойств.
- get() publicПолучить сохранённые куки для URL.
- getAll() publicПолучить все сохранённые куки в виде массивов.
- store() publicСохранить куки из ответа.
Подробное описание методов
convertCookieToArray()source protected
convertCookieToArray( Cake\Http\Cookie\CookieInterface $cookie )
Преобразует куки в массив его свойств.
В основном полезно, когда нужна обратная совместимость.
Параметры
-
Cake\Http\Cookie\CookieInterface$cookie - Объект куки.
Возвращает
массивget()source public
get( string $url )
Получить сохранённые куки для URL.
Находит соответствующие сохранённые куки и возвращает простой массив name => value
Параметры
- строка
$url - URL для поиска куки.
Возвращает
массивПереопределяет
Cake\Http\Cookie\CookieCollection::get() store()source public
store( Cake\Http\Client\Response $response , string $url )
Сохранить куки из ответа.
Сохранить куки, срок действия которых не истек. Если куки истекли и хранятся в данный момент, она будет удалена.
Параметры
-
Cake\Http\Client\Response$response - Ответ для чтения куки
- строка
$url - URL запроса для значений по умолчанию хоста/пути.
Методы, унаследованные от Cake\Http\Cookie\CookieCollection
__construct()source public
__construct( array $cookies [] )
Конструктор
Параметры
- массив
$cookiesнеобязательно [] - Массив объектов куки
add()source public
add( Cake\Http\Cookie\CookieInterface $cookie )
Добавить куки и получить обновлённый набор.
Куки хранятся по идентификатору. Это означает, что могут быть дублированные куки, если набор куки используется для куки на нескольких доменах. Это может повлиять на поведение get(), has() и remove().
Параметры
-
Cake\Http\Cookie\CookieInterface$cookie - Объект куки для добавления.
Возвращает
Cake\Http\Cookie\CookieCollectionaddFromResponse()source public
addFromResponse( Psr\Http\Message\ResponseInterface $response , Psr\Http\Message\RequestInterface $request )
Создать новый набор, который включает куки из ответа.
Параметры
- Psr\Http\Message\ResponseInterface
$response - Ответ для извлечения куки.
- Psr\Http\Message\RequestInterface
$request - Запрос для получения контекста куки.
Возвращает
Cake\Http\Cookie\CookieCollectionaddToRequest()source public
addToRequest( Psr\Http\Message\RequestInterface $request , array $extraCookies [] )
Добавить куки, соответствующие пути/домену/сроку действия, в запрос.
Это позволяет использовать CookieCollections как 'cookie-хранилище' в ситуации с HTTP-клиентом. Куки, соответствующие домену + пути запроса, которые не истекли на момент вызова этого метода, будут применены к запросу.
Параметры
- Psr\Http\Message\RequestInterface
$request - Запрос для обновления.
- массив
$extraCookiesнеобязательно [] Ассоциативный массив дополнительных куки для добавления в запрос. Это полезно, когда у вас есть данные куки извне набора, которые вы хотите отправить.
Возвращает
Psr\Http\Message\RequestInterfaceОбновлённый запрос.
checkCookies()source protected
checkCookies( array $cookies )
Проверяет, что в массиве находятся только валидные объекты куки
Параметры
- массив
$cookies - Массив объектов куки
Исключения
InvalidArgumentExceptioncount()source public
count( )
Получить количество куки в наборе.
Возвращает
целое числоРеализация
Countable::count() createFromHeader()source public static
createFromHeader( array $header )
Создать набор куки из массива заголовков Set-Cookie
Параметры
- массив
$header - Массив значений заголовков set-cookie.
Возвращает
Cake\Http\Cookie\CookieCollectioncreateFromServerRequest()source public static
createFromServerRequest( Psr\Http\Message\ServerRequestInterface $request )
Создать новый набор из куки в ServerRequest
Параметры
- Psr\Http\Message\ServerRequestInterface
$request - Запрос для извлечения данных куки
Возвращает
Cake\Http\Cookie\CookieCollectionfindMatchingCookies()source protected
findMatchingCookies( string $scheme , string $host , string $path )
Найти куки, соответствующие схеме, хосту и пути
Параметры
- строка
$scheme - Схема http для соответствия
- строка
$host - Хост для соответствия.
- строка
$path - Путь для соответствия
Возвращает
массивМассив пар имя/значение куки
getIterator()source public
getIterator( )
Получить итератор
Возвращает
ArrayIteratorРеализация
IteratorAggregate::getIterator() has()source public
has( string $name )
Проверить, существует ли куки с заданным именем
Параметры
- строка
$name - Имя куки для проверки.
Возвращает
логическое значениеTrue, если куки существует, иначе false.
parseSetCookieHeader()source protected static
parseSetCookieHeader( array $values )
Разбор заголовков Set-Cookie в массив
Параметры
- массив
$values - Список значений заголовка Set-Cookie.
Возвращает
Cake\Http\Cookie\Cookie[]Массив объектов cookie
remove()source public
remove( string $name )
Создаёт новую коллекцию со всеми cookie, соответствующими $name, удалёнными.
Если cookie не существует в коллекции, метод ничего не сделает.
Параметры
- строка
$name - Имя cookie для удаления.
Возвращает
Cake\Http\Cookie\CookieCollectionremoveExpiredCookies()source protected
removeExpiredCookies( string $host , string $path )
Удаляет просроченные cookie из коллекции.
Параметры
- строка
$host - Хост для проверки просроченных cookie.
- строка
$path - Путь для проверки просроченных cookie.
setRequestDefaults()source protected
setRequestDefaults( array $cookies , string $host , string $path )
Применяет путь и хост к набору cookie, если они не заданы.
Параметры
- массив
$cookies - Массив cookie для обновления.
- строка
$host - Хост для установки.
- строка
$path - Путь для установки.
Возвращает
массивМассив обновлённых cookie.
© 2005–2017 The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
https://api.cakephp.org/3.4/class-Cake.Http.Client.CookieCollection.html