Kernel.php 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. <?php
  2. namespace App\Http;
  3. use Illuminate\Foundation\Http\Kernel as HttpKernel;
  4. /**
  5. * Http请求核心
  6. * @property Array $middleware 全局中间件
  7. * @property Array $middlewareGroups 中间分组
  8. * @property Array $routeMiddleware 路由中间件
  9. *
  10. */
  11. class Kernel extends HttpKernel
  12. {
  13. /**
  14. * 全局HTTP中间件堆栈
  15. *
  16. * 这些中间件在应用程序的每个请求期间都会运行.
  17. *
  18. * @var array
  19. */
  20. protected $middleware = [
  21. // 获取应该信任的主机
  22. // \App\Http\Middleware\TrustHosts::class,
  23. // 关于设置信任代理有关的中间件
  24. //\App\Http\Middleware\TrustProxies::class,
  25. // 设置跨域请求 config/cors.php 可配置
  26. \Fruitcake\Cors\HandleCors::class,
  27. // post数据大小
  28. \Illuminate\Foundation\Http\Middleware\ValidatePostSize::class,
  29. // 修剪字符串
  30. \App\Http\Middleware\TrimStrings::class,
  31. // 将空字符串字段转换为 null
  32. \Illuminate\Foundation\Http\Middleware\ConvertEmptyStringsToNull::class,
  33. // 读取语言环境
  34. \App\Http\Middleware\LoadLocale::class,
  35. ];
  36. /**
  37. * 应用程序的路由中间件组
  38. *
  39. * 这些中间件在应用程序的每个路由分组请求期间都会运行.
  40. * @var array
  41. */
  42. protected $middlewareGroups = [
  43. /* web请求 */
  44. 'web' => [
  45. // cookies加密
  46. \App\Http\Middleware\EncryptCookies::class,
  47. // 队列cookie到响应
  48. \Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse::class,
  49. // 使用session 注意 一定要在cookie加密之后
  50. \Illuminate\Session\Middleware\StartSession::class,
  51. // CSRF 保护 注意 一定要在session开始之后
  52. \App\Http\Middleware\VerifyCsrfToken::class,
  53. // 替换绑定
  54. \Illuminate\Routing\Middleware\SubstituteBindings::class,
  55. ],
  56. /* 接口请求 */
  57. 'api' => [
  58. // 替换绑定
  59. \Illuminate\Routing\Middleware\SubstituteBindings::class,
  60. // 验证请求签名
  61. ],
  62. ];
  63. /**
  64. * 应用程序的路由中间件
  65. *
  66. * 这些中间件可以分配给组或单独使用
  67. *
  68. * @var array
  69. */
  70. protected $routeMiddleware = [
  71. // 后端登录验证
  72. 'admin'=>\App\Http\Middleware\AdminAuth::class,
  73. ];
  74. }