snosborn / laraveljwtauth
Laravel用户模块jwt认证和API请求文档的Laravel包
2.3
2024-04-24 05:28 UTC
Requires
- php: ^8.2
- rakutentech/laravel-request-docs: ^2.31
- tymon/jwt-auth: ^2.0
README
安装
使用以下命令安装包:
composer require snosborn/laraveljwtauth:VERSION
添加提供者
如果使用低于Laravel版本,请将提供者添加到config/app.php中的provider部分
Tymon\JWTAuth\Providers\LaravelServiceProvider::class,
snosborn\laraveljwtauth\UserServiceProvider::class,
添加外观
将外观添加到config/app.php中的aliases部分
'JWTAuth' => Tymon\JWTAuth\Facades\JWTAuth::class,
'JWTFactory' => Tymon\JWTAuth\Facades\JWTFactory::class,
在Auth文件中添加守卫
在config\auth.php文件中添加api的守卫
'defaults' => [ 'guard' => 'api', 'passwords' => 'users', ],
'guards' => [ 'web' => [ 'driver' => 'session', 'provider' => 'users', ],
'api' => [
'driver' => 'jwt',
'provider' => 'users',
'hash' => false,
],
],
添加验证器
在kernel文件中的中间件别名部分添加路由中间件
'validateuser' =>\App\Http\Middleware\ValidateUserMiddleware::class,
发布资源
运行以下命令以发布包中的文件
php artisan vendor:publish --provider="Tymon\JWTAuth\Providers\LaravelServiceProvider" --force
php artisan jwt:secret
php artisan vendor:publish --force --provider="snosborn\laraveljwtauth\UserServiceProvider"
API文档 OPEN API 3.0
运行以下命令以发布包文件
php artisan vendor:publish --tag=request-docs-config
php artisan route:cache
可选发布资源
目前执行此操作后,请求文档URL显示未找到
php artisan vendor:publish --tag=request-docs-assets
可选中间件
(可选) 将以下中间件添加到您的API中,以便捕获SQL日志和模型事件。
app/Http/Kernel.php
'api' => [
...
\Rakutentech\LaravelRequestDocs\LaravelRequestDocsMiddleware::class,
... and so on
使用方法:在浏览器中查看 /request-docs/
环境变量更改
将以下变量添加到.env中
SERVER_URL=BACKEND_SERVER_URL
Composer文件更改
将以下片段添加到composer.json文件中的autoload部分。
"files": [
"app/Helpers/Helper.php"
]
添加后运行composer install
国家、州、城市数据生成器
迁移后运行生成器以向相应表插入数据
php artisan db:seed --class=CountryStateCitySeeder
注意:由于数据集较大,此生成器可能需要30分钟。