PHP实现JWT验证(附源码)

  • Post author:
  • Post category:php




什么是JWT


JSON Web Token

(缩写

JWT

)是目前最流行的跨域认证解决方案。



原理

服务器验证用户身份后,生成一个 JSON 对象,发回给用户

{
   
  "userId": "1",
  "username": "Zhangsan",
  "expireDate": "2020-09-15 19:59:43"
}

以后,用户与服务端通信的时候,都要发回这个 JSON 对象。服务器完全只靠这个对象认定用户身份。



使用

放在 HTTP 请求的头信息

Authorization

字段里面

Authorization: Bearer <token>

或JWT 就作为POST请求参数传递。



数据结构

eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWV9.TJVA95OrM7E2cBab30RMHrHDcEfxjoYZgeFONFh7HgQ

长字符串中间用点

.

分隔成三个部分。



引入JWT

composer require firebase/php-jwt



源码

<?php
/**
 * Created by PhpStorm.
 * User: Gao YH
 * Date: 2020/9/15
 * Time: 20:00
 */

namespace app\proofreader\controller;

use Firebase\JWT\JWT;


class JwtService
{
   
    private 



版权声明:本文为weixin_44158741原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。