laravel框架中间件 except 和 only 的用法示例

时间:2021-10-05 02:49:51

本文实例讲述了laravel框架中间件 except 和 only 的用法。分享给大家供大家参考,具体如下:

except

except:为黑名单机制,除了show页面不经过中间件Auth过滤,其他都需要过滤,如果没有通过验证,则跳转到指定的页面

only

only:为白名单机制,除了edit页面需要经过中间件Auth过滤,其他都不需要过滤,如果没有通过验证,则跳转到指定的页面

except用法:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
class UserController extends Controller
{
  public function __construct()
  {
    $this->middleware('auth', ['except' => 'show']);
   }
  public function show(User $user)
  {
    return view('users.show', compact('user'));
  }
 public function edit(User $user)
  {
     return view('users.edit', compact('user'));
  }
}

except:为黑名单机制,除了show页面不经过中间件Auth过滤,其他都需要过滤,如果没有通过验证,则跳转到指定的页面

only用法:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
class UserController extends Controller
{
  public function __construct()
  {
    $this->middleware('auth', ['only' => 'edit']);
   }
  public function show(User $user)
  {
    return view('users.show', compact('user'));
  }
 public function edit(User $user)
  {
     return view('users.edit', compact('user'));
  }
}

only:为白名单机制,除了edit页面需要经过中间件Auth过滤,其他都不需要过滤,如果没有通过验证,则跳转到指定的页面

希望本文所述对大家基于Laravel框架的PHP程序设计有所帮助。

原文链接:https://blog.csdn.net/wong_gilbert/article/details/83894925