簡體   English   中英

如何根據登錄用戶和來賓用戶對Laravel路由進行分組

[英]How to group laravel routes based on logged users and guest users

我想根據登錄用戶和來賓用戶對Laravel 5潰敗進行分組。 Laravel 5中是否有任何內置的框架方法可以做到這一點?

是的,這里有一些: https: auth授權和guest auth

Route::group(['middleware' => ['auth']], function () {
    //only authorized users can access these routes
});

Route::group(['middleware' => ['guest']], function () {
    //only guests can access these routes
});

是的,您可以通過更新Authenticate.php中的以下方法來執行此操作

public function handle($request, Closure $next, $guard = null)
    {
        if (Auth::guard($guard)->guest()) {

            if ($request->ajax() || $request->wantsJson()) {
                return response('Unauthorized.', 401);
            } else {
                return redirect()->guest('login');
            }
        }

        return $next($request);
    }

如果您使用的是Sentinel,則可以從以下位置檢查已登錄的用戶:

Sentinel::check()而不是Auth::guard($guard)->guest()

然后,您可以按以下方式對潰敗進行分組。

Route::group(['middleware' => ['auth']], function () {
    // Authorized routs
});

Route::group(['middleware' => ['guest']], function () {
    // Guest routs
});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM