繁体   English   中英

Laravel 5 中用于管理员或身份验证的 Laravel 中间件

[英]Laravel middleware for admin or auth in laravel 5

我是 Laravel 的新手,不知道 Laravel 限制机制,我已经阅读了中间件,但对如何使用它以及为什么使用它以及它如何工作感到困惑,所以请指导我如何实现它以实现限制目的,即对于身份验证,sa 用户路由。

确保您在数据库用户表中有角色列或属性。

第1步

创建中间件

php artisan make:middleware AnyNameYouWant

它将为您创建一个不错的样板。

第2步

 public function handle($request, Closure $next)
{
    if (\Auth::user()->role == 'admin') {
      return $next($request);
    }

      return redirect('home');
}

第 3 步

在内核中使用它

protected $routeMiddleware = [
'auth' => \Illuminate\Auth\Middleware\Authenticate::class,
'auth.basic' => \Illuminate\Auth\Middleware\AuthenticateWithBasicAuth::class,
'bindings' => \Illuminate\Routing\Middleware\SubstituteBindings::class,
'can' => \Illuminate\Auth\Middleware\Authorize::class,
'guest' => \App\Http\Middleware\RedirectIfAuthenticated::class,
'throttle' => \Illuminate\Routing\Middleware\ThrottleRequests::class,
'admin' => \App\Http\Middleware\YourMiddleware::class,

];

第四步

保护您的路线。

Route::get('admin/profile', function () {
//
})->middleware('admin');

你完成了

最好的学习方法是直接从 Laravel 文档中学习: https ://laravel.com/docs/5.4/middleware

或者你可以只看一个简短的 Laracasts 视频:https ://laracasts.com/series/laravel-5-from-scratch/episodes/14

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM