Laravel JWT 的简单使用与浅度刨析(使用自定义Model)
发布网友
发布时间:2024-08-18 01:05
我来回答
共1个回答
热心网友
时间:2024-08-29 13:09
Laravel JWT 的简单使用与浅度解析,特别是涉及自定义Model的部分,主要步骤如下:
首先,确保安装最新版本的JWT包,遇到问题时关键在于理解源码,而非版本问题。
配置阶段,JWT会生成一个jwt.php文件于config文件夹中,用于设置加密算法和token过期时间。
生成加密密钥:在.env文件中,通过命令生成一个随机的secret,重要的是要妥善保管,避免上传到不安全的平台。
模型文件与迁移:创建一个简化版的Model,使用-m选项同时生成迁移文件,仅包含name和password字段。
修改迁移文件,加入JWTSubject接口,以实现JWT与Model的映射。
在config中添加别名,方便使用JWTAuth类,尽管编辑器可能不支持别名,但不影响实际请求。
在auth.php中调整守卫和驱动器,使用DemoModel的eloquent功能。
接下来是路由和控制器的创建,这里省略中间件,过程相当直观。
测试阶段,通过Postman发送带有token的请求,验证登录过程和token有效性。解析和设置token的过程需要注意,检查函数中的异常处理。
最后,对JWTAuth类成员进行深入分析,如fromSubject()和parseToken()的区别,以及check()函数中token验证的细节。通过实践和源码阅读,理解了如何正确处理和验证token。