feat: 添加 JWT 支持与开发环境配置,更新 API 路由与中间件
This commit is contained in:
@@ -2,25 +2,34 @@
|
||||
|
||||
use App\Http\Controllers\Api\V1\Admin\PingController as AdminPingController;
|
||||
use App\Http\Controllers\Api\V1\HealthController;
|
||||
use App\Http\Controllers\Api\V1\Player\MeController;
|
||||
use App\Http\Controllers\Api\V1\Player\PingController as PlayerPingController;
|
||||
use Illuminate\Support\Facades\Route;
|
||||
|
||||
/*
|
||||
| 全局前缀已由 bootstrap 注册为 /api,本文件内为相对路径。
|
||||
| 玩家端:/api/v1/player/...
|
||||
| 后台: /api/v1/admin/...
|
||||
| Laravel 默认在 bootstrap 中为 api 文件加前缀 `api`,故实际 URL:
|
||||
| /api/v1/health
|
||||
| /api/v1/player/...
|
||||
| /api/v1/admin/...
|
||||
*/
|
||||
|
||||
Route::prefix('v1')->group(function (): void {
|
||||
// 探活:无鉴权
|
||||
Route::get('health', HealthController::class)->name('api.v1.health');
|
||||
|
||||
Route::middleware('lottery.player')
|
||||
->prefix('player')
|
||||
Route::prefix('player')
|
||||
->name('api.v1.player.')
|
||||
->group(function (): void {
|
||||
// 不需 Bearer
|
||||
Route::get('ping', PlayerPingController::class)->name('ping');
|
||||
|
||||
// 需 Bearer:PlayerTokenResolver + EnsurePlayerApi
|
||||
Route::middleware('lottery.player')->group(function (): void {
|
||||
Route::get('me', MeController::class)->name('me');
|
||||
});
|
||||
});
|
||||
|
||||
// 后台 API 前缀;中间件 lottery.admin 内预留 Sanctum / RBAC
|
||||
Route::middleware('lottery.admin')
|
||||
->prefix('admin')
|
||||
->name('api.v1.admin.')
|
||||
|
||||
Reference in New Issue
Block a user