routes.php 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. <?php
  2. use Illuminate\Support\Facades\Route;
  3. use App\Module\OAuth\Controllers\AuthorizeController;
  4. use App\Module\OAuth\Controllers\TokenController;
  5. use App\Module\OAuth\Controllers\LoginController;
  6. use App\Module\OAuth\Controllers\UserController;
  7. use App\Module\OAuth\Middleware\StartSession;
  8. use Spatie\RouteAttributes\Attributes\Get;
  9. use Spatie\RouteAttributes\Attributes\Post;
  10. use Spatie\RouteAttributes\Attributes\Prefix;
  11. Route::middleware(['oauth.session'])->group(function () {
  12. Route::prefix('oauth')->group(function () {
  13. // 登录路由
  14. Route::get('/login', [LoginController::class, 'showLoginForm'])
  15. ->name('login');
  16. Route::post('/login', [LoginController::class, 'login'])
  17. ->name('oauth.login');
  18. Route::post('/logout', [LoginController::class, 'logout'])
  19. ->name('oauth.logout');
  20. // 授权端点
  21. Route::get('/authorize', [AuthorizeController::class, 'authorize'])
  22. ->name('oauth.authorize');
  23. Route::post('/authorize', [AuthorizeController::class, 'approve'])
  24. ->name('oauth.authorize.approve');
  25. // 令牌端点
  26. Route::post('/token', [TokenController::class, 'token'])
  27. ->name('oauth.token');
  28. // 用户信息端点
  29. Route::get('/user', [UserController::class, 'me'])
  30. ->name('oauth.user');
  31. });
  32. });