Laravel Passport 之api登录鉴权
配置passport
用passport实现接口的登录和jwt生成(生成token)
安装passport插件
composer require laravel/passport
执迁迁移文件,生成数据表,保存token数据
php artisan migrate
注:如果此处报错如下,那可能是因为你的框架下database/migrations目录中框架自带的三个迁移文件造成的,删除三个文件即可
生成客户端授权码
php artisan passport:install
修改接口账号模型(登录账号的信息模型)
修改config/auth.php文件中的api配置
(添加的apiweb是解决auth在接口中登录没有attempt问题,apiweb可随意起)
注:auth.php中的guards中的provider项是与auth.php中providers中的配置项一一对应,切记
令牌的有效期:在app/Proivders/AuthServiceProvide.php文件中的boot方法添加有效期
登录验证(auth验证)并生成token
postman进行测试
定义测试路由
测试登录生成token
测试token
如果你修改一下token
就会重定向到上面第一个路由中,这个不是固定的是可以修改的
修改如下:
注意:添加优雅!!!
优雅链接
Apache
Laravel 中包含了一个 public/.htaccess 文件,通常用于在资源路径中隐藏 index.php 的前端控制器。在用 Apache 为 Laravel 提供服务之前,确保启用了 mod_rewrite 模块,这样 .htaccess 文件才能被服务器解析。
如果 Laravel 附带的 .htaccess 文件不起作用,尝试下面的方法替代:
Options +FollowSymLinks -Indexes
RewriteEngine On
RewriteCond %{HTTP:Authorization} .
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
本作品采用《CC 协议》,转载必须注明作者和本文链接
推荐文章: