Странное поведение кода return $status/true. В какую сторону копать?

Имеется следующий код:
$request= Request::createFromGlobals();
        $token = $request->headers->get("Authorization");
        $status = false;
        $clientId = "xxx";
        $secret = "yyy";
        $secret = base64_decode(strtr($secret, '-_', '+/'));
        try {
            $decodedToken = \Firebase\JWT\JWT::decode($token, $secret, array('HS256'));
            if ($decodedToken->aud === $clientId) {
                $exp = $decodedToken->exp - time();
                if ($exp >= 1) {
                        $status = true;
                }
            }
        } catch (\Exception $e) {
            $status = false;
        }

        return $status;


Angular отправляет запрос и получает ошибку
(Причина: неудача канала CORS preflight).

Меняю return $status; на return true; и все работает, при том, что var_dump($status); - bool(true)

В какую сторону копать?
  • Вопрос задан
  • 308 просмотров
Решения вопроса 1
OxGroup
@OxGroup Автор вопроса
Разобрался. Моя глупость была. Дальше по коду был редирект.
Не понимаю, как это связано с использованием переменной, но если return $status(true) то отрабатывал header location
но только при использовании переменно была ошибка.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
VladimirAndreev
@VladimirAndreev
php web dev
а если на return false поменять - остается ошибка?
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы