Kernel.php 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108
  1. <?php
  2. namespace App\Http;
  3. use Modules\InnerApi\Middlewares\InnerApiAuthMiddleware;
  4. use Illuminate\Foundation\Http\Kernel as HttpKernel;
  5. use Modules\AgentApi\Middlewares\AgentAuthMiddleware;
  6. use Modules\ManageApi\Middlewares\ManageAuthMiddleware;
  7. class Kernel extends HttpKernel
  8. {
  9. /**
  10. * The application's global HTTP middleware stack.
  11. *
  12. * These middleware are run during every request to your application.
  13. *
  14. * @var array
  15. */
  16. protected $middleware = [
  17. \App\Http\Middleware\TrustProxies::class,
  18. \App\Http\Middleware\CheckForMaintenanceMode::class,
  19. \Illuminate\Foundation\Http\Middleware\ValidatePostSize::class,
  20. \App\Http\Middleware\TrimStrings::class,
  21. // \Illuminate\Foundation\Http\Middleware\ConvertEmptyStringsToNull::class,
  22. ];
  23. /**
  24. * The application's route middleware groups.
  25. *
  26. * @var array
  27. */
  28. protected $middlewareGroups = [
  29. 'web' => [
  30. \App\Http\Middleware\EncryptCookies::class,
  31. \Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse::class,
  32. \Illuminate\Session\Middleware\StartSession::class,
  33. // \Illuminate\Session\Middleware\AuthenticateSession::class,
  34. \Illuminate\View\Middleware\ShareErrorsFromSession::class,
  35. // \App\Http\Middleware\VerifyCsrfToken::class,
  36. \Illuminate\Routing\Middleware\SubstituteBindings::class,
  37. ],
  38. 'api' => [
  39. // 每以分钟限制最大请求次数60,response给浏览器X-RateLimit-Limit: 60
  40. 'throttle:120,1',
  41. \Illuminate\Routing\Middleware\SubstituteBindings::class,
  42. ],
  43. // 后台API
  44. 'manage_api' => [
  45. 'throttle:120,1',
  46. \Illuminate\Routing\Middleware\SubstituteBindings::class,
  47. ManageAuthMiddleware::class,
  48. ],
  49. // 代理API
  50. 'agent_api' => [
  51. 'throttle:120,1',
  52. \Illuminate\Routing\Middleware\SubstituteBindings::class,
  53. AgentAuthMiddleware::class,
  54. ],
  55. // 内部API路由中间件定义.
  56. 'inner_api' => [
  57. // 每以分钟限制最大请求次数60,response给浏览器X-RateLimit-Limit: 120
  58. 'throttle:120,1',
  59. \Illuminate\Routing\Middleware\SubstituteBindings::class,
  60. // 注册内部API认证中间件.
  61. InnerApiAuthMiddleware::class,
  62. ],
  63. ];
  64. /**
  65. * The application's route middleware.
  66. *
  67. * These middleware may be assigned to groups or used individually.
  68. *
  69. * @var array
  70. */
  71. protected $routeMiddleware = [
  72. 'auth' => \App\Http\Middleware\Authenticate::class,
  73. 'auth.basic' => \Illuminate\Auth\Middleware\AuthenticateWithBasicAuth::class,
  74. 'bindings' => \Illuminate\Routing\Middleware\SubstituteBindings::class,
  75. 'cache.headers' => \Illuminate\Http\Middleware\SetCacheHeaders::class,
  76. 'can' => \Illuminate\Auth\Middleware\Authorize::class,
  77. 'guest' => \App\Http\Middleware\RedirectIfAuthenticated::class,
  78. 'password.confirm' => \Illuminate\Auth\Middleware\RequirePassword::class,
  79. 'signed' => \Illuminate\Routing\Middleware\ValidateSignature::class,
  80. 'throttle' => \Illuminate\Routing\Middleware\ThrottleRequests::class,
  81. 'verified' => \Illuminate\Auth\Middleware\EnsureEmailIsVerified::class,
  82. ];
  83. /**
  84. * The priority-sorted list of middleware.
  85. *
  86. * This forces non-global middleware to always be in the given order.
  87. *
  88. * @var array
  89. */
  90. protected $middlewarePriority = [
  91. \Illuminate\Session\Middleware\StartSession::class,
  92. \Illuminate\View\Middleware\ShareErrorsFromSession::class,
  93. \App\Http\Middleware\Authenticate::class,
  94. \Illuminate\Routing\Middleware\ThrottleRequests::class,
  95. \Illuminate\Session\Middleware\AuthenticateSession::class,
  96. \Illuminate\Routing\Middleware\SubstituteBindings::class,
  97. \Illuminate\Auth\Middleware\Authorize::class,
  98. ];
  99. }