Laravel - 注销特定用户

Oni*_*ion 9 authentication logout laravel

我知道如何登录用户,但如何从应用程序中注销指定的用户?似乎没有足够的报道.

Kam*_*ski 5

当您是管理员并想要阻止某些用户时会出现此问题。然后,当您阻止用户时,您想 imidietly 注销他。对于 laravel 5.2(也可以用于较低版本),您可以创建中间件:

创建中间件

namespace App\Http\Middleware;

use Closure;
use Illuminate\Support\Facades\Auth;

class BockedUser
{
    /**
     * Handle an incoming request.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  \Closure  $next
     * @param  string|null  $guard
     * @return mixed
     */
    public function handle($request, Closure $next, $guard = null)
    {
        $user = Auth::user();
        if ($user and $user->is_bocked) {
            Auth::logout();
            return redirect('/login');
        }

        return $next($request);
    }
}
Run Code Online (Sandbox Code Playgroud)

并在 app/Http/Kernel.php 部分 $middlewareGroups > 'web' 添加 \App\Http\Middleware\BockedUser::class。我假设你所有的路线都在Route::group(['middleware' => 'web'], function () { .. all your routes ..}