Kernel.php 3.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. <?php
  2. namespace App\Http;
  3. use App\Http\Middleware\Authenticate;
  4. use App\Http\Middleware\EncryptCookies;
  5. use App\Http\Middleware\PreventRequestsDuringMaintenance;
  6. use App\Http\Middleware\RedirectIfAuthenticated;
  7. use App\Http\Middleware\TrimStrings;
  8. use App\Http\Middleware\TrustProxies;
  9. use App\Http\Middleware\ValidateSignature;
  10. use App\Http\Middleware\VerifyCsrfToken;
  11. use Illuminate\Auth\Middleware\AuthenticateWithBasicAuth;
  12. use Illuminate\Auth\Middleware\Authorize;
  13. use Illuminate\Auth\Middleware\EnsureEmailIsVerified;
  14. use Illuminate\Auth\Middleware\RequirePassword;
  15. use Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse;
  16. use Illuminate\Foundation\Http\Kernel as HttpKernel;
  17. use Illuminate\Foundation\Http\Middleware\ConvertEmptyStringsToNull;
  18. use Illuminate\Foundation\Http\Middleware\ValidatePostSize;
  19. use Illuminate\Http\Middleware\HandleCors;
  20. use Illuminate\Http\Middleware\SetCacheHeaders;
  21. use Illuminate\Routing\Middleware\SubstituteBindings;
  22. use Illuminate\Routing\Middleware\ThrottleRequests;
  23. use Illuminate\Session\Middleware\AuthenticateSession;
  24. use Illuminate\Session\Middleware\StartSession;
  25. use Illuminate\View\Middleware\ShareErrorsFromSession;
  26. use Laravel\Sanctum\Http\Middleware\EnsureFrontendRequestsAreStateful;
  27. class Kernel extends HttpKernel
  28. {
  29. //全局 HTTP 中间件栈。 这些中间件在对应用程序的每次请求期间运行。
  30. protected $middleware = [
  31. // 系统默认的中间件
  32. // \App\Http\Middleware\TrustHosts::class,
  33. TrustProxies::class,
  34. HandleCors::class,
  35. PreventRequestsDuringMaintenance::class,
  36. ValidatePostSize::class,
  37. TrimStrings::class,
  38. ConvertEmptyStringsToNull::class,
  39. ];
  40. /**
  41. * HTTP 中间件组。
  42. *
  43. * @var array<string, array<int, class-string|string>>
  44. */
  45. protected $middlewareGroups = [
  46. 'web' => [
  47. EncryptCookies::class,
  48. AddQueuedCookiesToResponse::class,
  49. StartSession::class,
  50. ShareErrorsFromSession::class,
  51. // VerifyCsrfToken::class,
  52. SubstituteBindings::class,
  53. ],
  54. 'api' => [
  55. //\Laravel\Sanctum\Http\Middleware\EnsureFrontendRequestsAreStateful::class,
  56. 'throttle:api',
  57. SubstituteBindings::class,
  58. ],
  59. ];
  60. //路由中间件。 这些中间件可以分配给组,也可以单独使用。
  61. protected $routeMiddleware = [
  62. 'admin.jwt' => \App\Http\Middleware\JwtAdminMiddleware::class,
  63. 'jwt' => \App\Http\Middleware\JwtMiddleware::class,
  64. 'check.button.uri' => \App\Http\Middleware\CheckButtonPermission::class,
  65. // 系统默认的中间件
  66. 'auth' => Authenticate::class,
  67. 'auth.basic' => AuthenticateWithBasicAuth::class,
  68. 'auth.session' => AuthenticateSession::class,
  69. 'cache.headers' => SetCacheHeaders::class,
  70. 'can' => Authorize::class,
  71. 'guest' => RedirectIfAuthenticated::class,
  72. 'password.confirm' => RequirePassword::class,
  73. 'signed' => ValidateSignature::class,
  74. 'throttle' => ThrottleRequests::class,
  75. 'verified' => EnsureEmailIsVerified::class,
  76. ];
  77. }