jdlxnl / jdlx
Laravel中rest APIs的基础
1.1.9
2022-11-21 11:41 UTC
Requires
- php: >=8
- doctrine/dbal: ^3.0
- fakerphp/faker: ^1.17
- laravel/framework: ^8.12
- laravel/sanctum: ^2.9
- phpunit/phpunit: ^9.5
- spatie/laravel-permission: ^4.0
README
此包提供了一套支持REST API的工具。它非常偏颇,在配置方面没有提供太多功能。
它可以
- 根据API响应输出所有响应: https://ggdocs.cn/styleguide/jsoncstyleguide.xml
- 通过编译文档文件夹中的JSON文件生成swagger文档
- 假设 sanctum 和 spatie wildcard 权限
安装
通过composer加载包来添加此包。
composer require jdlxnl/jdlx
运行以下命令来设置数据库
php artisan vendor:publish --provider="Laravel\Sanctum\SanctumServiceProvider" php artisan vendor:publish --provider="Spatie\Permission\PermissionServiceProvider" php artisan vendor:publish --provider="Jdlx\JdlxServiceProvider" ## By default files won't be overwritten. This is good for existing intallations ## For new installation use force to overwrite the following: ## - router/api.php ## - app/Models/User.php ## - app/Exception/Handler.php ## php artisan vendor:publish --provider="Jdlx\JdlxServiceProvider" --force php artisan migrate
生成用户脚手架
php artisan api:scaffold User
将以下内容添加到 config/app.php 以启用格式化响应
/* * Package Service Providers... */ Jdlx\Providers\ResponseServiceProvider::class,
更新到 config/permission.php 以允许通配符
'enable_wildcard_permission' => true,
添加到 .env
SANCTUM_STATEFUL_DOMAINS=*.local.me,localhost,localhost:8000,localhost:3000,127.0.0.1,127.0.0.1:8000,::1
SESSION_SECURE_COOKIE=false
技巧和窍门
- 在JetBreans中,将
publish文件夹标记为排除,以防止冲突