首先 composer 安装 firebase/php-jwt
github:https://github.com/firebase/php-jwt
composer require firebase/php-jwt
然后生成token
public function signToken(){
$key = "hhh"; //密钥key
$token = [
"iss"=>"", //签发者 可以为空
"aud"=>"", //面象的用户,可以为空
"iat" => time(), //签发时间
"nbf" => time(), //在什么时候jwt开始生效
"exp" => time()+7200, //token 过期时间
"uid" => 123 //记录的userid的信息,这里是自已添加上去的,如果有其它信息,可以再添加数组的键值对
];
$jwt = JWT::encode($token,$key,"HS256"); //根据参数生成了 token
return json($jwt);
}
展示效果eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiIiLCJhdWQiOiIiLCJpYXQiOjE2NzgwMDg4OTYsIm5iZiI6MTY3ODAwODg5NiwiZXhwIjoxNjc4MDE2MDk2LCJ1aWQiOjEyM30.NF-pj-ezQvDTdUsHpocDpvEhIgauir2pNQ_xP1cgbVQ
最后使用token
public function signToken(){
$key = "hhh"; //密钥key
$token = [
"iss"=>"", //签发者 可以为空
"aud"=>"", //面象的用户,可以为空
"iat" => time(), //签发时间
"nbf" => time(), //在什么时候jwt开始生效
"exp" => time()+7200, //token 过期时间
"uid" => 123 //记录的userid的信息,这里是自已添加上去的,如果有其它信息,可以再添加数组的键值对
];
$jwt = JWT::encode($token,$key,"HS256"); //根据参数生成了 token
return json($jwt);
}
效果
{"iss":"","aud":"","iat":1678008896,"nbf":1678008896,"exp":1678016096,"uid":123}