在 jwt-auth laravel 中获取自定义声明
Get custom Claim in jwt-auth laravel
我需要帮助来解决问题。
我正在使用 lumen(laravel 5.1) 为移动应用程序创建 Web 服务。我正在使用 JWT 进行身份验证,它 returns 一个令牌。
第一个问题是,如果我使用另一个 system/device 的相同令牌,那么它会验证并 returns 请求信息。我希望该令牌仅对来自用户获取令牌的 device/system 有效。
第二个问题是我在 JWT 令牌中添加了一些自定义声明。我想从令牌中获取自定义声明值。我发现了类似的问题 ,但没有明白我在 php.
中如何使用它
请帮我解决问题。
我找到了解决方案。这是解决方案可能对其他人有帮助
$payload = JWTAuth::parseToken()->getPayload();
// then either of
$payload->get('foo');
$payload['foo'];
我找到了解决办法,这对你有帮助。
$token = JWTAuth::getToken();
$payload = JWTAuth::decode($token);
$validate = $payload->get('foo'); // return true or false
if($validate) {
// some condition
} else {
// some condition
}
// SENDING:
$user = User::first();
$payload = [
'foo' => 'bar'
];
$guard = 'api'; // or web
$token = auth($guard)->claims($payload)->login($user);
// RECEIVING:
$data = auth($guard)->payload()->get('foo');
我需要帮助来解决问题。 我正在使用 lumen(laravel 5.1) 为移动应用程序创建 Web 服务。我正在使用 JWT 进行身份验证,它 returns 一个令牌。
第一个问题是,如果我使用另一个 system/device 的相同令牌,那么它会验证并 returns 请求信息。我希望该令牌仅对来自用户获取令牌的 device/system 有效。
第二个问题是我在 JWT 令牌中添加了一些自定义声明。我想从令牌中获取自定义声明值。我发现了类似的问题
请帮我解决问题。
我找到了解决方案。这是解决方案可能对其他人有帮助
$payload = JWTAuth::parseToken()->getPayload();
// then either of
$payload->get('foo');
$payload['foo'];
我找到了解决办法,这对你有帮助。
$token = JWTAuth::getToken();
$payload = JWTAuth::decode($token);
$validate = $payload->get('foo'); // return true or false
if($validate) {
// some condition
} else {
// some condition
}
// SENDING:
$user = User::first();
$payload = [
'foo' => 'bar'
];
$guard = 'api'; // or web
$token = auth($guard)->claims($payload)->login($user);
// RECEIVING:
$data = auth($guard)->payload()->get('foo');