search

Home  >  Q&A  >  body text

The rewritten title is: keyOrKeyArray must be an instance of Firebase\JWT\Key key or an array of Firebase\JWT\Key key in php ci4

{ "title": "UnexpectedValueException", "type": "UnexpectedValueException", "code": 500, "message": "$keyOrKeyArray must be an instance of a FirebaseJWTKey key or an array of FirebaseJWTKey keys", "File": "E:varwwwhtmlprojectspansadminvendorfirebasephp-jwtsrcJWT.php", "OK": 416,

P粉680000555P粉680000555443 days ago626

reply all(1)I'll reply

  • P粉914731066

    P粉9147310662023-11-08 11:59:41

    You can use the following sample code -

    <?php
    
    namespace App\Controllers;
    
    use App\Controllers\BaseController;
    use Firebase\JWT\JWT;
    use Firebase\JWT\Key;
    
    class User extends BaseController
    {
        public function exampleMethod()
        {
            $issuedAt = time();
            $expirationTime = $issuedAt + 60;  // jwt valid for 60 seconds from the issued time
            $payload = array( // Any random data
                'userid' => 'Test_UID',
                'name' => 'Sankhnad Mishra',
                'iat' => $issuedAt,
                'exp' => $expirationTime
            );
            $key = 'A_JWT_SECRET'; // Any string
            $alg = 'HS256'; // This is alg
    
            $token = JWT::encode($payload, $key, $alg); // Encode payload as a JWT Token
            $decodedToken = JWT::decode($token, new Key($key, 'HS256')); // Decode token to a payload
    
            $response = [
                'token' => $token,
                'decodedToken' => $decodedToken
            ];
    
            print_r($response);
        }
    }

    If you run above then you will get the following response -

    {
        "token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VyaWQiOiJUZXN0X1VJRCIsIm5hbWUiOiJTYW5raG5hZCBNaXNocmEiLCJpYXQiOjE2NDU4MTU0OTUsImV4cCI6MTY0NTgxNTU1NX0.0CwT9quW8-teyob3ObRU5KQBfQYWamCSTVCrAk9UX-o",
        "decodedToken": {
            "userid": "Test_UID",
            "name": "Sankhnad Mishra",
            "iat": 1645815495,
            "exp": 1645815555
        }
    }

    So just select these codes from above as per your requirement.

    reply
    0
  • Cancelreply