即时通讯PHP和Laravel中的新功能。我尝试在网上搜索,但我无法为我的问题得到正确的答案。我希望我的特定页面只能由已通过身份验证的管理员和用户访问。所以基本上,所有用户都需要先登录。继承人我的代码。提前致谢。中间件中的多重验证。 Laravel 5.4
HomeController.php
class HomeController extends Controller
{
/**
* Create a new controller instance.
*
* @return void
*/
public function __construct()
{
$this->middleware('auth:web, auth:admin');
}
/**
* Show the application dashboard.
*
* @return \Illuminate\Http\Response
*/
public function index()
{
return view('accounts.user.user_dashboard');
}
}
auth.php
'guards' => [
'web' => [
'driver' => 'session',
'provider' => 'users',
],
'api' => [
'driver' => 'token',
'provider' => 'users',
],
'admin' => [
'driver' => 'session',
'provider' => 'admins',
],
'admin-api' => [
'driver' => 'token',
'provider' => 'admins',
],
],
为了您的需求,您只需创建一个路由中间件来检查用户的角色,无论角色是普通用户还是管理员用户。您可以使用网络中间件或管理中间件。管理角色用户可以自动访问普通网页。你不需要放置多个中间件。最好的方法是在不在控制器构造函数上的路由上使用。 – webDev
通过定义一个路由中间件来自己尝试检查用户表中的用户角色。做简单的方式不是你的方式......如果你不能找出使用路由中间件,那么我会发布解决方案。 – webDev