### composer安装JWT``
> *****
> ` composer require lcobucci/jwt`
> *****
### 依赖
* PHP 5.5+ (v3.2) and PHP 7.1 (v4.x)
* OpenSSL Extensio
### 参数解释
![](https://img.kancloud.cn/22/24/22245d07207474cf0347e902b8b95484_1009x387.png)
### 生成token
~~~
use Lcobucci\JWT\Builder;
//创建jwt
$time = time();
$token = (new Builder())->issuedBy('http://maicaii.com') // 发行者
->permittedFor('http://maicaii.com') // 观众
->identifiedBy('4f1g23a12aa', true) // id (jti claim),
->issuedAt($time) // 发行时间(iat claim)
->canOnlyBeUsedAfter($time + 60) // 可使用时间 (nbf claim)
->expiresAt($time + 3600) // 过期时间(exp claim)
->withClaim('usernam', ‘Gonggui’) // 配置一个新的字段
->withClaim('password', ‘Gonggui’) // 配置一个新的字段
->getToken(); // 生成令牌
~~~
### 结果
~~~
//只有两部分,没有签名部分
eyJpc3MiOiJodHRwOlwvXC9tYWljYWlpLmNvbSIsImF1ZCI6Imh0dHA6XC9cL21haWNhaWkuY24iLCJqdGkiOiI0ZjFnMjNhMTJhYSIsImlhdCI6MTU4NTczODkzMiwibmJmIjoxNTg1NzM4OTkyLCJleHAiOjE1ODU3NDI1MzIsInVzZXJuYW1lIjoiR29uZ2d1aSIsInBhc3N3b3JkIjoiR29uZ2d1aSJ9.
~~~
### 生成带签名的token
~~~
use Lcobucci\JWT\Builder;
use Lcobucci\JWT\Signer\Key;
use Lcobucci\JWT\Signer\Hmac\Sha256;// 签名加密方式
$time = time();
$token = (new Builder())->issuedBy('http://maicaii.com') // 发行者
->permittedFor('http://maicaii.cn') // 观众
->identifiedBy('4f1g23a12aa', true) // id (jti claim),
->issuedAt($time) // 发行时间(iat claim)
->canOnlyBeUsedAfter($time + 60) // 可使用时间 (nbf claim)
->expiresAt($time + 3600) // 过期时间(exp claim)
->withClaim('username', 'Gonggui') // 配置一个新的字段
->withClaim('password', 'Gonggui') // 配置一个新的字段
->getToken(new Sha256(),new Key('你的key')); // 生成令牌 key要保密
return $token;
~~~
### 结果
~~~
eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiIsImp0aSI6IjRmMWcyM2ExMmFhIn0
.eyJpc3MiOiJodHRwOlwvXC9tYWljYWlpLmNvbSIsImF1ZCI6Imh0dHA6XC9cL21haWNhaWkuY24iLCJqdGkiOiI0ZjFnMjNhMTJhYSIsImlhdCI6MTU4NTc0MTc1MiwibmJmIjoxNTg1NzQxODEyLCJleHAiOjE1ODU3NDUzNTIsInVzZXJuYW1lIjoiR29uZ2d1aSIsInBhc3N3b3JkIjoiR29uZ2d1aSJ9
.5BOA\_nzBBz2ZgDnJqAD-h--Qa1NXjb4Jsl-MdIs-MCc
~~~
- 序言
- ThinkPHP官方资源
- 术语
- 根目录
- php术语
- jwt
- 下载jwt
- 认识jwt
- 生成token
- 验证token
- lcobucci/jwt
- 安装
- 配置
- 生成token
- 解析令牌
- 验证令牌
- 扩展库jwt
- thinkPHP使用lcobucci/jwt
- phpmailer
- PHPMailer的使用
- phpMailer config
- 短信验证吗
- 阿里云短信验证码发送类
- 权限管理
- 基于thinkphp6.0
- 通用函数
- 密码加密
- 数组
- 数据库
- 查询数据
- 添加数据
- 删除数据
- 批量删除
- 更新数据
- 请求流程
- thinkphp6安装
- thinkphp6目录介绍
- 单应用
- 多应用
- 配置文件
- 模型,模板与Model的区别
- .env介绍
- 入口文件
- 控制器
- model层
- 视图层
- common公共函数
- 路由
- 命令行
- 常用thinkphp函数和方法
- 高德地图i定位城市
- 更新日志