tp5实现JWT登录

1.安装依赖

composer require firebase/php-jwt

2.获取token的方法(校验用户输入的用户名密码正确后调用,生成token)

function getToken($id,$access,$account_name,$username)

{

  $key = config('salt'); //在配置文件中配置salt的值

  $token = [

    "iss" => "",  //签发者 可以为空

    "aud" => "", //面象的用户,可以为空

    "iat" => time(), //签发时间

    "nbf" => time(), //在什么时候jwt开始生效

    "exp" => time() + 1296000, //token 过期时间

    "uid" => $id, //记录的userid的信息,这里是自已添加上去的,如果有其它信息,可以再添加数组的键值对

    "access" => $access,

    "account_name" => $account_name,

    "username" => $username

  ];

  $jwt = JWT::encode($token, $key, "HS256"); //根据参数生成了 token

  return $jwt;

}

3.验证token的方法(在基类控制器中的initialize()中或中间件中调用,校验token)

function checkToken($token)

{

  $key = config('salt');// 在配置文件中配置了salt

  $info = JWT::decode($token, $key, ["HS256"]); //解密jwt

  return $info;

  // return $info->uid;

}

没有账号? 忘记密码?

社交账号快速登录