# 什么是JWT?
*****
Json web token (JWT), 是為了在網絡應用環境間傳遞聲明而執行的一種基于JSON的開放標準([(RFC 7519](https://link.jianshu.com?t=https://tools.ietf.org/html/rfc7519)).該token被設計為緊湊且安全的,特別適用于分布式站點的單點登錄(SSO)場景。JWT的聲明一般被用來在身份提供者和服務提供者間傳遞被認證的用戶身份信息,以便于從資源服務器獲取資源,也可以增加一些額外的其它業務邏輯所必須的聲明信息,該token也可直接被用于認證,也可被加密。
*****
# 基于token的鑒權機制
基于token的鑒權機制類似于http協議也是無狀態的,它不需要在服務端去保留用戶的認證信息或者會話信息。這就意味著基于token認證機制的應用不需要去考慮用戶在哪一臺服務器登錄了,這就為應用的擴展提供了便利。
#### 流程上是這樣的:
~~~~
* 用戶使用用戶名密碼來請求服務器
* 服務器進行驗證用戶的信息
* 服務器通過驗證發送給用戶一個token
* 客戶端存儲token,并在每次請求時附送上這個token值
* 服務端驗證token值,并返回數據
~~~~
這個token必須要在每次請求時傳遞給服務端,它應該保存在請求頭里, 另外,服務端要支持`CORS(跨來源資源共享)`策略,一般我們在服務端這么做就可以了`Access-Control-Allow-Origin: *`
[下載jwt](%E4%B8%8B%E8%BD%BDjwt.md)
[認識jwt](%E8%AE%A4%E8%AF%86jwt.md)
[生成token](thinkphp%E4%BD%BF%E7%94%A8jwt.md)
[驗證token](%E9%AA%8C%E8%AF%81token.md)
- 序言
- 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定位城市
- 更新日志