app.php 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109
  1. <?php
  2. require_once __DIR__.'/../vendor/autoload.php';
  3. try {
  4. (new Dotenv\Dotenv(__DIR__.'/../'))->load();
  5. } catch (Dotenv\Exception\InvalidPathException $e) {
  6. //
  7. }
  8. /*
  9. |--------------------------------------------------------------------------
  10. | Create The Application
  11. |--------------------------------------------------------------------------
  12. |
  13. | Here we will load the environment and create the application instance
  14. | that serves as the central piece of this framework. We'll use this
  15. | application as an "IoC" container and router for this framework.
  16. |
  17. */
  18. $app = new Laravel\Lumen\Application(
  19. realpath(__DIR__.'/../')
  20. );
  21. $app->withFacades();
  22. $app->configure('auth');
  23. $app->configure('api');
  24. $app->withEloquent();
  25. /*
  26. |--------------------------------------------------------------------------
  27. | Register Container Bindings
  28. |--------------------------------------------------------------------------
  29. |
  30. | Now we will register a few bindings in the service container. We will
  31. | register the exception handler and the console kernel. You may add
  32. | your own bindings here if you like or you can make another file.
  33. |
  34. */
  35. $app->singleton(
  36. Illuminate\Contracts\Debug\ExceptionHandler::class,
  37. App\Exceptions\Handler::class
  38. );
  39. $app->singleton(
  40. Illuminate\Contracts\Console\Kernel::class,
  41. App\Console\Kernel::class
  42. );
  43. /*
  44. |--------------------------------------------------------------------------
  45. | Register Middleware
  46. |--------------------------------------------------------------------------
  47. |
  48. | Next, we will register the middleware with the application. These can
  49. | be global middleware that run before and after each request into a
  50. | route or middleware that'll be assigned to some specific routes.
  51. |
  52. */
  53. $app->middleware([
  54. App\Http\Middleware\ResponseMiddleware::class
  55. ]);
  56. $app->routeMiddleware([
  57. 'api' => App\Http\Middleware\Authenticate::class,
  58. ]);
  59. /*
  60. |--------------------------------------------------------------------------
  61. | Register Service Providers
  62. |--------------------------------------------------------------------------
  63. |
  64. | Here we will register all of the application's service providers which
  65. | are used to bind services into the container. Service providers are
  66. | totally optional, so you are not required to uncomment this line.
  67. |
  68. */
  69. // $app->register(App\Providers\AppServiceProvider::class);
  70. // $app->register(App\Providers\AuthServiceProvider::class);
  71. // $app->register(App\Providers\EventServiceProvider::class);
  72. $app->register(Dingo\Api\Provider\LumenServiceProvider::class);
  73. $app->register(\Tymon\JWTAuth\Providers\LumenServiceProvider::class);
  74. /*
  75. |--------------------------------------------------------------------------
  76. | Load The Application Routes
  77. |--------------------------------------------------------------------------
  78. |
  79. | Next we will include the routes file so that they can all be added to
  80. | the application. This will provide all of the URLs the application
  81. | can respond to, as well as the controllers that may handle them.
  82. |
  83. */
  84. $app->router->group([
  85. 'namespace' => 'App\Http\Controllers',
  86. ], function ($router) {
  87. require __DIR__.'/../routes/web.php';
  88. });
  89. return $app;