TP5集成JWT认证
安装扩展
composer require firebase/php-jwt
安装完成后vendor 会出现firebase 目录文件,这就是我们需要用到的jwt 源文件,如下图所示:
在TP5中使用
修改application/config.php文件,增加如下内容到数组中:
'jwt' =>[
'key'=>'long', //自己定义的key值
'lat'=>time(), // 签发时间
'nbf'=>time(), //生效时间
'exp'=>time() + 24 * 3600, //过期时间,24小时过期
],
如下截图所示:
控制器中使用
public function index()
{
$key = Config::get('jwt.key');
dump($key);
$jwtData = [
'lat' => config('jwt.lat'),
'nbf' => config('jwt.nbf'),
'exp' => config('jwt.exp'),
'uid' => 1,
'mobile' => '17687585902', //可以加入自己想要获得的用户信息参数
];
// 生成Token
$jwtToken = JWT::encode($jwtData,$key);
dump($jwtToken);
//验证Token
$info = JWT::decode($jwtToken,$key,['HS256']);
dump($info);die;
}
可以通过
return json($info);
返回json数据。