一、什么是 JWT
JWT
,全称:Json Web Token
,可以看成是一种 Token
签发方案。
Token
通常叫做认证令牌,用于客户端和服务端在交互时的身份认证。
JWT
的优势:
- 数据量小,传输速度快。
- 使用
json
数据格式,可跨语言。 - 即签即发,不需要在服务端保存。
- 适合移动端。
二、在 ThinkPHP 中安装 JWT
先去官网挑选适合自己项目的库。
进入官网,选择 Libraries
,选择 PHP
语言过滤。
每个库都有对应的 composer
命令。
这里选择第一个,在 ThinkPHP
项目根目录下执行命令安装:
composer require firebase/php-jwt
三、签发 Token 示例
public function createToken()
{
$jwtContent = [
// 签发人,这里采用当前站点域名
'iss' => request()->domain(),
// 签发时间,当前时间戳
'iat' => time(),
// 到期时间,1天后
'exp' => time