Laravel JWT:localhost上生成的令牌在服务器上有效

时间:2017-05-09 01:28:25

标签: php laravel api jwt

我正在为移动应用编写API,后端网站是用Laravel编写的。我正在使用Tymon \ JWTAuth进行身份验证:

function  auth()
{
    try {
        if(!$user = JWTAuth::parseToken()->authenticate())
        {
            return  ('login or register');
        }
    }
    catch (JWTException $e )
    {
        return   ('token is invalid');
    }
    return  $this->user = $user ;
}

今天我注意到了一些事情,当我在我的localhost API上为id为4的用户生成JWT令牌时,如果我将相同的令牌发送到实时API而不是出错,我会得到用户身份4!基本上我可以通过在我的localhost上为他/她的id生成一些令牌来登录我想要的任何用户。我错过了什么吗?

我不知道这是否与此有关,但为了节省测试时间,我不会发送令牌作为POST正文和标题的一部分,只需在GET方法的网址中发送:

site.com/api/user?token=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9

1 个答案:

答案 0 :(得分:0)

听起来像localhost和远程位置上的密钥是相同的。改变这些可能会解决您的问题。