Ich benutze android-Bibliothek 'io.jsonwebtoken: jjwt: 0.7.0', um das Token zu erstellen, das die JWT korrekt erstellt, die ich überprüft habe. Mein Problem ist, wenn ich die php firebase/php-jwt-Bibliothek zum Decodieren verwende. beide Bibliotheken sind auf HS256 und Schlüssel "Testen" eingestellt. Was mache ich hier falsch?PHP-JWT nicht decodieren
String compactJws = Jwts.builder()
.claim("devId", getDeviceId())
.signWith(SignatureAlgorithm.HS256, "testing")
.compact();
logger.i(compactJws);
Protokolle als eyJhbGciOiJIUzI1NiJ9.eyJkZXZJZCI6Ijc4MGQ1YWRlMzMwNGVhZmEifQ.XIKxG1xZbuMD8FRIAJ735LNbhodAj1a7pMZ6o3IF0ig
use \Firebase\JWT\JWT;
$jwt = "eyJhbGciOiJIUzI1NiJ9.eyJkZXZJZCI6Ijc4MGQ1YWRlMzMwNGVhZmEifQ.XIKxG1xZbuMD8FRIAJ735LNbhodAj1a7pMZ6o3IF0ig";
$key = "testing";
$decoded = JWT::decode($jwt, $key, array('HS256'));
print_r($decoded);
kehrt abgefangene Ausnahme 'Firebase \ JWT \ SignatureInvalidException' mit der Meldung 'Die Signaturprüfung nicht bestanden'
Geheimnis base64 zu dekodieren codiert wird, auf dem Bildschirm überprüft geschossen –
So Warum hast du einen JWT gezeigt und den anderen in deinem Code benutzt? Die Signatur sieht ungültig aus. Was ist also Ihr tatsächliches Problem? – zerkms
Ich habe den falschen Screenshot verwendet. Ich habe meinen Code aktualisiert –