laravel如何使用中間件實現禁止未登錄用戶訪問頁面

下面由laravel教程欄目給大家介紹laravel使用中間件實現禁止未登錄用戶訪問頁面的方法,希望對需要的朋友有所幫助!

laravel如何使用中間件實現禁止未登錄用戶訪問頁面

1、生成中間件

[root@localhost?MRedis]#?php?artisan?make:middleware?CheckLogin Middleware?created?successfully.

2、實現中間件,在apphttpmiddlewareCheckLogin.php

public?function?handle($request,?Closure?$next) ????{ ????????if?(!session('user'))?{ ????????????return?redirect('login'); ????????} ????????return?$next($request); ????}

3、注冊中間件,在apphttpkernel.php下,添加的為最后一行

protected?$routeMiddleware?=?[ ????????'auth'?=>?IlluminateAuthMiddlewareAuthenticate::class, ????????'auth.basic'?=>?IlluminateAuthMiddlewareAuthenticateWithBasicAuth::class, ????????'bindings'?=>?IlluminateRoutingMiddlewareSubstituteBindings::class, ????????'can'?=>?IlluminateAuthMiddlewareAuthorize::class, ????????'guest'?=>?AppHttpMiddlewareRedirectIfAuthenticated::class, ????????'throttle'?=>?IlluminateRoutingMiddlewareThrottleRequests::class, ????????'check.login'?=>?AppHttpMiddlewareCheckLogin::class,???//?這一行 ????];

4、使用中間件(一定要把登錄路由的放在外面)

Route::group(['middleware'?=>?'check.login'],?function()?{內部為,不想讓未登錄用戶進的路由}

5、成功

以上就是

? 版權聲明
THE END
喜歡就支持一下吧
點贊11 分享