wpforge
Goto Top

Frage zu Firebase JWT

Hallo,

Ich versuche innerhalb einer statischen Methode einer Klasse mit JWT zu arbeiten:

Dazu steht in der Klasse:

if(!class_exists("JWT")) die('JWT not found');
return JWT::encode($payload, PRIVATE_KEY, "HS256");

Für meinen Geschmack steht da "Wenn du die Klasse JWT nicht findest stirb"

Nun bekomme ich aber folgenden Fehler, der genau auf die "return" Zeile zeigt:
Uncaught Error: Class 'Firebase\JWT\JWT' not found in...

Firebase ist nicht über composer hinzugefügt. der Firebaseordner befindet sich im gleichen Verzeichnis, wie die Klasse und die ausführende Datei.
der Pfad zur JWT.php ist Firebase/JWT/JWT.php;

Hat jemand eine Idee?

Content-Key: 419218

Url: https://administrator.de/contentid/419218

Printed on: April 23, 2024 at 14:04 o'clock

Member: godlie
godlie Feb 18, 2019 at 12:22:32 (UTC)
Goto Top
Hallo,

hast du denn die Firebase JWT über einen include / require eingebunden?
Member: WPFORGE
WPFORGE Feb 18, 2019 at 13:40:50 (UTC)
Goto Top
ja habe ich.
Und das muss wohl auch funktionieren... denn sonst müsste das Script ja in der Zeile darüber enden.
Member: godlie
godlie Feb 18, 2019 updated at 15:53:36 (UTC)
Goto Top
Dann musst du noch den Namespace angeben.

<?php
include('src/JWT.php');  
use \FireBase\JWT\JWT;

if(!class_exists("FireBase\JWT\JWT")) die('No JWT Found');  

JWT::method.........

Die Prüfung auf class_exists muss auch anders lauten siehe oben.
Member: WPFORGE
WPFORGE Feb 18, 2019 at 16:27:26 (UTC)
Goto Top
ich versteh nicht ganz warum...
aber das:
//use \Firebase\JWT\JWT;
hat das Problem gelöst.
Member: godlie
godlie Feb 18, 2019 at 16:37:12 (UTC)
Goto Top
Das hat damit zu tun, das die JWT Class selber diesen Namespace nutzt.
Member: WPFORGE
WPFORGE Feb 18, 2019 at 16:40:07 (UTC)
Goto Top
Danke ;)
Member: godlie
godlie Feb 19, 2019 at 05:57:07 (UTC)
Goto Top
Also wenn nun alles funktioniert einfch noch den Thread auf gelöst stellen face-smile