Browse Source

api路由

胖虎 2 years ago
parent
commit
3510b3883b
2 changed files with 49 additions and 5 deletions
  1. 44 5
      app/Providers/RouteServiceProvider.php
  2. 5 0
      public/nginx.htaccess

+ 44 - 5
app/Providers/RouteServiceProvider.php

@@ -35,13 +35,13 @@ class RouteServiceProvider extends ServiceProvider
      */
     public function boot()
     {
-        $this->configureRateLimiting();
+//        $this->configureRateLimiting();
+        //后台接口路由
+        $this->mapAdminApiRoutes();
+        //前台接口路由
+        $this->mapApiRoutes();
 
         $this->routes(function () {
-            Route::prefix('api')
-                ->middleware('api')
-                ->namespace($this->namespace)
-                ->group(base_path('routes/api.php'));
 
             Route::middleware('web')
                 ->namespace($this->namespace)
@@ -60,4 +60,43 @@ class RouteServiceProvider extends ServiceProvider
             return Limit::perMinute(60)->by(optional($request->user())->id ?: $request->ip());
         });
     }
+
+    /**
+     * 总后台API路由
+     */
+    protected function mapAdminApiRoutes(){
+        foreach ( glob(base_path('routes'.DIRECTORY_SEPARATOR.'adminApi'.DIRECTORY_SEPARATOR).'*.php' ) as $fileName ) {
+            $fileName = basename( $fileName );
+            $prefix = substr( $fileName,0,strrpos($fileName,'.') );
+            $nameSpace = ucfirst($prefix);
+
+            //中间件过滤加载
+            Route::middleware('adminApi_verify')
+                ->namespace( $this->namespace."\\AdminApi" )
+                ->group( base_path('routes'.DIRECTORY_SEPARATOR.'adminApi'.DIRECTORY_SEPARATOR."{$fileName}") );
+        }
+    }
+
+    /**
+     * Define the "api" routes for the application.
+     *
+     * These routes are typically stateless.
+     *
+     * @return void
+     */
+    protected function mapApiRoutes()
+    {
+        Route::prefix('api')
+            ->middleware('api')
+            ->namespace($this->namespace)
+            ->group(base_path('routes/api.php'));
+
+        foreach ( glob(base_path('routes'.DIRECTORY_SEPARATOR.'api'.DIRECTORY_SEPARATOR).'*.php' ) as $fileName ) {
+            $fileName = basename( $fileName );
+            Route::middleware('api_verify')
+                ->namespace( $this->namespace."\\Api" )
+                ->prefix('api')
+                ->group( base_path('routes'.DIRECTORY_SEPARATOR.'api'.DIRECTORY_SEPARATOR."{$fileName}") );
+        }
+    }
 }

+ 5 - 0
public/nginx.htaccess

@@ -0,0 +1,5 @@
+location / {
+	if (!-e $request_filename){
+		rewrite  ^(.*)$  /index.php?s=$1  last;   break;
+	}
+}