[英]how to make authentic user afte login cant going to admin page
Not able to separate user and admin authentication.无法分离用户和管理员身份验证。
This is My Middleware Player, The Problem is after i login as user i still can access admin Page.这是我的中间件播放器,问题是在我以用户身份登录后,我仍然可以访问管理页面。
Middleware : Player中间件:播放器
<?php
namespace App\Http\Middleware;
use Auth;
use Closure;
class Player
{
/**
* Handle an incoming request.
*
* @param \Illuminate\Http\Request $request
* @param \Closure $next
* @return mixed
*/
public function handle($request, Closure $next)
{
if (!Auth::check()) {
return redirect()->route('login');
}
if (Auth::user()->role == 1) {
return redirect()->route('admin');
}
if (Auth::user()->role == 2) {
return $next($request);
}
}
}
and this my routing这是我的路由
Rout:溃败:
// User Route
Auth::routes(['verify' => true]);
Route::get('/player', 'PlayerController@index')->name('player')->middleware('player');
Route::post('/player/submit', 'PlayerController@createPlayer');
// Admin Route
Route::get('/admin', 'AdminController@index')->name('admin')->middleware('admin');
Make sure you registred your middleware in App/Http/Kerner.php
right after that debug your middleware using dd(Auth::user())
or dump(Auth::user())
helper and check a request is entering in your middleware successfully.确保在使用dd(Auth::user())
或dump(Auth::user())
帮助App/Http/Kerner.php
调试中间件后App/Http/Kerner.php
在App/Http/Kerner.php
中间件,并检查请求是否正在进入您的中间件成功地。
public function handle($request, Closure $next)
{
dd(Auth::user());
// Or
dd(Auth::user()->role);
if (!Auth::check()) {
return redirect()->route('login');
}
if (Auth::user()->role == 1) {
return redirect()->route('admin');
}
if (Auth::user()->role == 2) {
return $next($request);
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.