2015-04-27 6 views
1

Я использую ajax для отправки данных контроллеру. В этом контроллере я хотел бы установить cookie - я тогда пытаюсь прочитать набор cookie (для целей тестирования).Установить и прочитать файл cookie

\Cookie::make('test', 'test-value', 2); 
var_dump(\Request::cookie('test')); 
die(); 

Но приведенные выше результаты имеют нулевое значение. Где я иду не так?

Также на боковой ноте - возможно ли хранить массив значений в файле cookie. Есть ли ограничение на размер массива?

+0

FYI, laravel имеет метод, который делает ваш var_dump и умирает за вас, поэтому вы можете сделать 'dd ($ value)' вместо – haakym

ответ

2

\Cookie::make() не отправляет cookie в браузер пользователя. Это просто создает cookie.

Если вы хотите установить cookie, используйте $response->withCookie(cookie('name', 'value', $minutes));. (Для получения дополнительной информации смотрите здесь: http://laravel.com/docs/5.0/requests#cookies)

Также, после установки нового номера \Request::cookie() не будет отображаться новый файл cookie, поскольку новый файл cookie не отправляется с последним запросом.

Смежные вопросы