在中间件中获取当前的授权用户

时间:2018-09-10 11:05:13

标签: php laravel laravel-5.6 laravel-middleware

如何获得中间件的当前用户? Laravel 5.6

当我尝试加入课程

use Illuminate\Support\Facades\Auth;

然后

Auth::user()

我就是空的

中间件

namespace App\Http\Middleware;

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

class DebugbarMiddleware
{
    /**
     * Handle an incoming request.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  \Closure  $next
     * @return mixed
     */
    public function handle($request, Closure $next)
    {
        echo "<pre>"; var_dump(Auth::user()); echo "</pre>"; die();

        return $next($request);
    }
}

授权

$controller = new LoginController();
        $request = new Request();

        Auth::logout();

        $request->setLaravelSession(session()->driver(session()->getDefaultDriver()));

        $user = Auth::loginUsingId($id);

        if ($user) {
            $controller->authenticated($request, $user);
            return $this->sendResponse(['messages' => 'User authorization successfully'], 'M User authorization successfully');
        }

        return $this->sendError('User not found!');

1 个答案:

答案 0 :(得分:2)

全局中间件堆栈在启动会话和身份验证详细信息之前运行。

在“网络”组的底部或路由中间件中定义此名称。

相关问题