我尝试了所有可能的解决方案,以将由于中间件而无法通过身份验证的用户重定向到不同的登录页面,但是每次将我带到/ register时,我都修改了中间件文件夹中的Authenticate.php以及自身的中间件,但仍将我带走/ register。我想将用户重定向到特定的登录页面(如果他没有登录),所以我拥有编辑器中间件,因此如果有人试图打开链接/ editor / dashboard并且他未通过身份验证,我想将其重定向到/ editorlogin
编辑器中间件:
public function handle($request, Closure $next)
{
if(auth()->user() && (auth()->user()->role_id == 3)) {
return $next($request);
} else {
return redirect()->intended('editorlogin');
}
路线:
Route::group(['middleware' => ['auth:web','editor'],'prefix' => 'writer'], function () {
Route::get('/dashboard', 'Writer\WriterController@index')->name('writer.dashboard');
Route::resource('/store', 'Writer\StoreController');
auth:web
从...中删除auth
web
是不同的中间件软件,并且auth
是不同的
auth
具有不同的重定向网址,这就是为什么要获取auth
重定向网址而不是自定义网址的原因
Route::group(['middleware' => ['web','editor'],'prefix' => 'writer'], function () {
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句