Laravel не может прочитать недавно созданный файл cookie - PullRequest
0 голосов
/ 06 марта 2019

У меня есть проект, который аутентифицирует пользователя с помощью файлов cookie, таких как token_ и refreshToken_, и промежуточное ПО, которое перехватывает мои маршруты и проверяет, вошел ли пользователь в систему или нет.
В моем промежуточном программном обеспечении, когда мне нужно обновить token_, у меня есть следующий код:

namespace App\Http\Middleware\VerifyAccessToken

$cookie_name = "token_";
$cookie_value = $obj->access_token;
$expires_in = $obj->expires_in;
$time = time() + $expires_in; // 3600 = 1 hora
$path = "/";
$domain = env('COOKIE_DOMAIN');
setcookie($cookie_name, $cookie_value, $time, $path, $domain, false, true);

$cookie_name = "refreshToken_";
$cookie_value = $obj->refresh_token;
setcookie($cookie_name, $cookie_value, $time + 3600, $path, $domain, false, true);

return $next($request);

Работает, видимо, нормально, но проблема в следующем:
После того, как промежуточное ПО перехватило мой маршрут и обновило cookie, процедура запроса к его контроллеру, но там я не могу получить доступ к cookie с помощью $_COOKIE['token_'] и получаю сообщение об ошибке, но если я смотрю в инспекторе chrome, cookie там и перезагрузка страницы (F5) я могу получить доступ к cookie в контроллере
У меня есть метод для доступа к cookie в контроллере без необходимости переходить к представлению раньше?

1 Ответ

0 голосов
/ 07 марта 2019

Чтобы прочитать значение Cookie в Laravel, вам нужно использовать:

$token = Cookie::queued('token_');
dd($token->getValue());

https://api.symfony.com/3.0/Symfony/Component/HttpFoundation/Cookie.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...