PHP. Invalid Signature. При генерации jwt
Являюсь новичков в php и пытаюсь реализовать простое приложение с регистрацией и авторизацией. Но появляются ошибки при создании jwt. Выводит ошибку синтаксиса jwt-token на сайте, где я произвожу проверку только что сгенерированного токена.
Использую библиотеку php/jwt:
ссылка на библиотеку https://github.com/firebase/php-jwt
jwt:
eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpYXQiOjE2NjIzOTc1MTB9.Tk6Zm-VLoEuVpZ-W44DpKFhhFpRti9Z4lfepEzXmzsMeyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpYXQiOjE2NjIzOTc1MTB9.Tk6Zm-VLoEuVpZ-W44DpKFhhFpRti9Z4lfepEzXmzsM
$key = $_ENV['SECRET_KEY']; // значение: SECRET_CODE
мой код php:
<?php
require 'vendor/autoload.php';
require_once __DIR__ . '/../../interface/interface.php';
use Firebase\JWT\JWT;
use Firebase\JWT\Key;
class JWThandler implements IJWThandler
{
public function getCookie(string $name)
{
if (isset($_COOKIE[$name])) {
return $_COOKIE[$name];
}
return "need cookie";
}
public function checkToken(string $token)
{
return true;
}
public function setAccessToken(string $token)
{
return true;
}
public function setRefreshToken(string $token)
{
}
public function setCookie(string $name, string $value, int $duration)
{
setcookie($name, $value, time() + $duration, "/", "", "", true);
}
public function createJWT(int $duration)
{
$key = $_ENV['SECRET_KEY'];
$payload = [
'iat' => time() + 10000
];
$jwt = JWT::encode($payload, $key, 'HS256');
echo $jwt;
return $jwt;
}
}
Пример ошибки с сайта по проверке jwt:
