使用laravel解析自定义TymonJWT令牌


Parsing custom TymonJWT token with laravel

我正在尝试解析自定义JWT token。要生成令牌,我有以下类:

public function createToken()
{
    $client = ['sub' => 'u0406'];
    $payload = JWTFactory::make($client);
    $token = JWTAuth::encode($payload);
    return $token;
}
我得到这个令牌并传递给它

我如何解析这个并在另一种方法中获得变量$client ?我的parseMethod声明如下:

public function create(Request $request)
{
        $token = JWTAuth::getToken();
        return $token;
}

它只返回标记字符串。不是数组

我假设您成功地在createToken()方法中创建了令牌,并且您正在将其传递给create()方法的请求,其中您要解析该令牌以再次获得客户端对象/关联数组。

从你写的,我认为你是使用错误的方法在JWTAuth,这是getToken()。要正确进行解析,请尝试执行

  1. 首先从jwtauth类实例化$jwtauth对象

  2. 在create方法中使用$client = jwtauth->toUser($token);

  3. 访问客户端/用户

我只是用下面的方法得到这个:

public function create(Request $request)
    {
        $token = JWTAuth::parseToken();
        return $token->getPayload()->get('sub');
    }

返回u0406