试图在Laravel 5.5中的Custom Guard的Auth中获取非对象的属性

时间:2018-11-23 09:48:18

标签: php laravel

尝试使用自定义防护进行身份验证时抛出错误:尝试获取Illuminate \ Foundation \ Http \ Middleware \ VerifyCsrfToken.php中非对象的属性

我的RedirectIfAuthenticated.php

public function handle($request, Closure $next, $guard = null)
{
    switch($guard){
        case 'delimin':
            if (Auth::guard($guard)->check()) {
                return redirect()->route('delimin.dashboard');
            }
            break;

        default:
            if (Auth::guard($guard)->check()) {
                return redirect('/admin/dashboard');
        }
            break;
    }


    return $next($request);
}

VerifyCsrfToken.php中显示的错误

 protected function addCookieToResponse($request, $response)
{
    $config = config('session');

    $response->headers->setCookie(
        new Cookie(
            'XSRF-TOKEN', $request->session()->token(), $this->availableAt(60 * $config['lifetime']),
            $config['path'], $config['domain'], $config['secure'], false, false, $config['same_site'] ?? null
        )
    );

    return $response;
}

它从不重定向到目标页面。始终$ this-> middleware('auth:guard_name');重新运行false。 最近两天我一直坚持这一点。请帮我解决。

1 个答案:

答案 0 :(得分:0)

这是由于与自定义防护模型相关联的自定义主键。我将其更改为id本身,并且有效!