【发布时间】:2019-01-17 00:58:41
【问题描述】:
我在我的 Backend Api(使用 Lumen) 中使用 firebase/php-jwt 来提供 Authentication Token。 我在前端使用 Angular 6。
这是我从后台登录后的结果:-
{
"message": "Successfully Authenticated !",
"status": "Found",
"code": 200,
"data": "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJsdW1lbi1qd3QiLCJzdWIiOjEsImlhdCI6MTUzMzgxNjc3OCwiZXhwIjoxNTMzODIwMzc4fQ.84BaTHYoWPEzNsZ6Qu0YK-VQelN0WQ0gcmUdXsxO7OA"
}
我的这个令牌的有效负载结构是:-
$payload = [
'iss' => "lumen-jwt", // Issuer of the token
'sub' => $user->user_id, // Subject of the token
'iat' => time(), // Time when JWT was issued.
'exp' => time() + (60*60) // Expiration time
];
所以,当我解码它时,我只需解码:-
JWT::encode($payload, env('JWT_SECRET')); // In environment file "JWT_SECRET={random_secret_code}"
所以,我有一个我正在使用的常量 JWT_SECRET。
我的问题是令牌在哪些算法中生成?因为我没有 在 encode() 函数中指定任何算法?
现在在 Angular 中,我如何通过解码令牌来获取 user_id、过期时间和其他信息?
【问题讨论】:
标签: angular jwt angular6 lumen php-jwt