Download the PHP package nizerin/hyperf-jwt without Composer
On this page you can find all versions of the php package nizerin/hyperf-jwt. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Informations about the package hyperf-jwt
基于hyperf(https://doc.hyperf.io/#/zh/README) 框架的jwt鉴权(json web token)组件。
采用基于https://github.com/lcobucci/jwt/tree/3.3 进行封装。
黑名单的设置参考了这篇文章https://learnku.com/articles/17883
注意:
由于hyperf
可以升级1.1版本,如果你用1.1版本,请需要修改jwt-auth
的composer.json
文件,把依赖hyperf
的组件版本全部改为~1.1.0或者使用jwt-auth
的^2.0.1版本,这个版本是针对hyperf
的1.1版本的
说明:
使用:
1、拉取依赖
2、发布配置
3、jwt配置
去配置config/autoload/jwt.php文件或者在配置文件.env里配置
更多的配置请到config/autoload/jwt.php查看
4、全局路由验证
在config/autoload/middlewaress.php配置文件中加入jwt验证中间件,所有的路由都会进行token的验证,例如:
5、局部验证
在config/routes.php文件中,想要验证的路由加入jwt验证中间件即可,例如:
6、注解的路由验证
请看官方文档:https://doc.hyperf.io/#/zh/middleware/middleware 在你想要验证的地方加入jwt验证中间件即可。
7、模拟登录获取token
注意:暂时不支持传入用户对象获取token,后期会支持
7、路由
8、鉴权
在需要鉴权的接口,请求该接口时在HTTP头部加入
9、结果
请求:http://{your ip}:9501/login,下面是返回的结果
请求:http://{your ip}:9501/v1/data
10、例子文件
11、获取解析后的token数据
提供了一个方法getParserData
来获取解析后的token数据。
例如:$this->jwt->getParserData()
12、建议
目前 jwt 抛出的异常目前有两种类型Hyperf\JwtAuth\Exception\TokenValidException
和Hyperf\JwtAuth\Exception\JWTException
,TokenValidException
异常为 token 验证失败的异常,会抛出 401, JWTException 异常会抛出 500 ,最好你们自己在项目异常重新返回错误信息。
All versions of hyperf-jwt with dependencies
ext-swoole Version >=4.4
hyperf/utils Version ~1.1.0
hyperf/framework Version ~1.1.0
hyperf/di Version ~1.1.0
hyperf/cache Version ~1.1.0
lcobucci/jwt Version ^3.2
nesbot/carbon Version ^1.0 || ^2.0