laravel學習筆記之--中間鍵Middleware
阿新 • • 發佈:2019-01-05
作用:
過濾進入應用程式的http請求使用場景:
如一個活動,在開始之前,應當跳轉至宣傳介面
使用方法:
在__Controller裡面新建兩個或以上方法,並新增路由如
public function activity0(){ return '活動快要開始啦!'; } public function activity1(){ return '活動1進行中!'; } public function activity2(){ return '活動2進行中!'; }
注意的是:此處的宣傳介面的路由不應該新增在活動的group路由裡面,而是單獨的
//宣傳頁面 Route::any('activity0',['uses'=>'[email protected]']); //活動頁面 Route::group(['middleware'=>['activity']],function (){ Route::any('activity2',['uses'=>'[email protected]']); Route::any('activity1',['uses'=>'[email protected]']); });
然後,在Middleware資料夾下新增一個php檔案,
此處取名為Activity.php ,內容
<?phpnamespace APP\Http\Middleware; use Closure; class Activity{ public function handle($request,Closure $next){ if(time()<strtotime('2018-1-20')){ //活動日期前跳轉至activity0介面 return redirect('activity0'); } return $next($request); } }
在Requests資料夾下的Kernel.php註冊一箇中間鍵
protected $routeMiddleware //我們在這個下面新建的
protected $middleware = [ //註冊全域性中間鍵在這裡
'activity' => \App\Http\Middleware\Activity::class,然後去訪問activity1或activity2即可