
本文共 774 字,大约阅读时间需要 2 分钟。
配置
在上一篇文章中,我们已经成功安装了phper666/jwt-auth组件,并完成了相关配置。如果需要更改默认设置,可以在.env文件中添加相应的配置参数,例如为了更改默认的密钥,只需在.env文件中添加JWT_SECRET = your secret即可。
在这个项目中,我们将使用默认配置,这样可以简化部署和测试过程。配置文件路径为config/autoload/jwt.php,内部已经详细说明了相关配置方式。
自定义异常处理
我们需要添加对TokenValidException的自定义异常处理,返回带401错误的JSON响应。为了实现这一点,可以按照以下步骤操作:
在http下注册自定义的异常处理
自定义中间件
添加新的中间件,实现以下功能:
对所有jwt验证失败的情况,抛出TokenValidException。这样可以让我们自定义的异常处理类来处理这种异常,从而实现raquo返回带401错误的JSON响应。
该中间件的作用是,在 jwt验证通过后,将当前登录用户注入到请求对象中。这样,在使用该中间件的控制器后,只需调用request->user即可获得当前登录用户信息。
关于中间件的使用,可以参考官方文档进行详细了解。
认证功能实现
完善token的基本操作功能,包括:
获取token:通过username和password进行认证,返回相应的token和refreshToken。
refresh token:实现token的刷新功能,关联 гр角度将old token置为无效状态。
logout:在实际实现中,退出登录只需将token加入黑名单即可。
路由配置完成后,可以通过Postman等工具进行测试。需要注意的是,对需要认证的路由需要在请求头中添加Bearer Token。
《PHP微服务练兵》系列索引:
发表评论
最新留言
关于作者
