PDA

Visualizza la versione completa : Problema con PHP-JWT


fermat
05-11-2020, 10:41
ciao!

sto sviluppando una app con react, facendo il login tramite PHP-JWT.


dopo aver effettuato il login correttamente, invio una richiesta per recuperare dei dati inviando il token.
il problema che ottengo sempre questo:


Object { res: "ko", message: "Accesso negato", error: "Cannot handle token prior to 2020-11-05T09:37:14+0100" }


ma solo la prima che accedo sulla pagina.
se la refresho, ottengo i dati senza problemi.

lato server faccio questo:


header("Access-Control-Allow-Origin: *");
header("Content-Type: application/json; charset=UTF-8");
header("Access-Control-Allow-Methods: GET");
header("Access-Control-Max-Age: 3600");
header("Access-Control-Allow-Headers: Content-Type, Access-Control-Allow-Headers, Authorization, X-Requested-With");

require_once "../../libs/php-jwt/autoload.php";

use \Firebase\JWT\JWT;

$secretKey = GLOBAL_SECRET_KEY;
$authHeader = $_SERVER['HTTP_AUTHORIZATION'];
$arr = explode(" ", $authHeader);
$jwt = $arr[1];
$explJwt = explode(".", $jwt);
$dataJwt = json_decode(base64_decode($explJwt[1]), TRUE);

if ($jwt) {
try {
$decoded = JWT::decode($jwt, $secretKey, array('HS256'));

// DO STUFF

} catch (Exception $e) {
echo json_encode(array(
"res" => "ko",
"message" => "Accesso negato",
"error" => $e->getMessage()
));
}
} else {
echo json_encode(array(
"res" => "ko",
"message" => "Accesso negato",
"error" => "Nessun token o token non valido"
));
}


in pratica ricado nel catch.
qualche idea??

fermat
05-11-2020, 10:50
pare di aver risolto con questo:


JWT::$leeway = 10;

Loading