ThinkPHP5实现JWT Token认证的过程(亲测可用)

1、composer先挂载阿里云镜像

composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/

2、安装JWT扩展

composer require lcobucci/jwt 3.3

3、在vendor目录中打开readme.md文件

ThinkPHP5实现JWT Token认证的过程(亲测可用)_第1张图片

4、在extend目录中,自定义类进行JWT操作生成token

5、操作Token.php实现生成token的方法,详细在readme.md中的Hmac位置

注意:生效时间+60表示1分钟后生效,可以去掉加法运算,表示即时生效

ThinkPHP5实现JWT Token认证的过程(亲测可用)_第2张图片

6、自行找控制器进行测试

ThinkPHP5实现JWT Token认证的过程(亲测可用)_第3张图片

7、最终会得到结果类似如下所示:

eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiIsImp0aSI6IjRmMWcyM2ExMmFhIn0.eyJpc3MiOiJmYW54aW56ZSIsImF1ZCI6InVzZXIiLCJqdGkiOiI0ZjFnMjNhMTJhYSIsImlhdCI6MTYxOTY2NjUwNywibmJmIjoxNjE5NjY2NTY3LCJleHAiOjE2MTk2NzAxMDcsInVpZCI6MTJ9.N6CkSWaNdTVk2ust9QzRa1wpY-ZCQTwp5nYPLYa_K-k

8、封装验证Token的方法,如果失败返回false,如果成功返回用户id

ThinkPHP5实现JWT Token认证的过程(亲测可用)_第4张图片

9、案例:Token在实际代码中的应用

注意:这里为了简单的做测试,使用的是DB操作,但是在实际代码中不建议使用DB,必须使用MVC进行开发。

(1)、登录的时候生成token

ThinkPHP5实现JWT Token认证的过程(亲测可用)_第5张图片

(2)、登录后可以拿到token,然后请求其他接口的时候就验证token是否正确,如果不正确,提示无效的token

ThinkPHP5实现JWT Token认证的过程(亲测可用)_第6张图片

(3)、由于登录后的每一个方法可能都需要验证token,所以我们把token封装到构造中进行验证【实例化类的时候自动调用构造,构造会在每一个要执行的方法前自动执行】

到此这篇关于ThinkPHP5实现JWT Token认证的文章就介绍到这了,更多相关ThinkPHP5 JWT Token认证内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

你可能感兴趣的:(ThinkPHP5实现JWT Token认证的过程(亲测可用))