子域之间的Laravel Auth仅适用于“记住我”

时间:2019-05-24 20:48:53

标签: laravel

在Laravel 5.7中,我具有以下中间件:

  public function handle($request, Closure $next)
{
    if (!\Auth::check())
    {
        return response("Not logged in!", 500);
    }
    return $next($request);
}

当选中“记住我”时,此方法效果很好,但当未选中“记住我”且请求将转到另一个子域时,此方法效果很好。如果我检查记得我的话,那么效果很好。因此,请求从www.mysite.com转到api.mysite.com。唯一的问题是再次发生,当记住我没有被选中时。

对于SESSION_DOMAIN,我有.mysite.com和SESSION_SECURE_COOKIE = true。

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

花了一些时间才能弄清楚,但是主要的问题是我正在将绑定中间件添加到路由文件中:

$api->version(['v3'], [
'namespace' => 'App\Http\Controllers\Api\v3',
'middleware' => ['bindings'],

一旦我删除了“绑定”中间件,它就会识别会话cookie,而不是将其重置。 (只有我一个人)才花了15个小时来找出这个愚蠢的错误。