<?php
require 'vendor/autoload.php';
use Firebase\JWT\JWT;
use Firebase\JWT\ExpiredException;
$key = "tu_clave_secreta"; // La misma clave utilizada para firmar el token
// Obtener el token del encabezado de la solicitud
$headers = getallheaders();
$token = isset($headers['Authorization']) ? str_replace('Bearer ', '', $headers['Authorization']) : null;
if ($token) {
try {
// Decodificar el token
$decoded = JWT::decode($token, $key, ['HS256']);
// Aquí puedes acceder a los datos del payload
$userId = $decoded->sub; // ID del usuario (o cualquier otro dato del payload)
// Validación exitosa
echo json_encode(['message' => 'Token is valid', 'userId' => $userId]);
} catch (ExpiredException $e) {
// El token ha expirado
http_response_code(401);
echo json_encode(['message' => 'Token has expired']);
} catch (Exception $e) {
// El token no es válido
http_response_code(401);
echo json_encode(['message' => 'Invalid token']);
}
} else {
http_response_code(401);
echo json_encode(['message' => 'No token provided']);
}