phplaravelauthenticationjwtsatellizer

Token mismatch betweeen Auth and JWTAuth


I am using https://scotch.io/tutorials/token-based-authentication-for-angularjs-and-laravel-apps for token based authentication.

For this I am using middleware 'jwt.auth' in route as guided. Which is working fine.

And https://github.com/sahat/satellizer for social authentication. Here I tested with middleware 'auth' first which is working fine but 'auth' is working only for social authentication not for normal users.

vice versa when I changed middleware 'auth' to 'jwt.auth' is works for normal users but not for social athentication.

I am getting 'invalid_token' error.

Please suggest me what should I need to change to work for both 1. normal users and 2. social athenticantion (FB,google..users).

Thanks in advace.


Solution

  • I think satellizer is sending invalid token, You should check satellizer token setting first.

    And then cross check that in below both file secret key must be match.

    In App config file.

    'token_secret' => '1234567890',
    

    In Jwt config file

    'secret' => env('JWT_SECRET', '1234567890'), 
    

    I suggest generate jwt key by

    php artisan jwt:generate
    

    and assign the same value in App config.

    and use 'jwt.auth' in middleware jwt will check token sent by satellizer.