Laravel 5.2 Auth::check() 即使 Auth::try() 成功也不工作


Laravel 5.2 Auth::check() is not working even when Auth::attempt() succeeds

public function login($local=false,$data=[])
{
    $validator = Validator::make(($local)?$data:Request::all(), [
        'username' => 'required',
        'password' => 'required',
    ]);
    if ($validator->fails()) {
        return Response::json(array('status'=>'0','message'=>'Invalid parameters'));
    }
    if(Auth::attempt(($local)?$data:Request::all()))
    {
        //dd(Auth::user());
        return Response::json(array('status'=>'1','message'=>'User logged in successfully'));
    }
        return Response::json(array('status'=>'1','message'=>'User log in failed'));
}

这有效并显示已成功登录,但是当我尝试访问经过身份验证的用户的详细信息时,它返回 null。

if(!Auth::check())
{
    return Response::json(array('status'=>'0','message'=>'User not logged in'));
}

任何建议将不胜感激。谢谢

如果请求来自同一服务器,Auth::check()将起作用例如:www.laraapi.com

根据我的理解,您必须进行一些基于令牌的身份验证,这意味着

username=>'testuser',
password=>'123456987',
'userSecrectToken'=>'asd88225asdaweqs8899eqweiou'
用户

通过身份验证后,使用用户 ID/用户名和请求类型传递机密令牌

例如:

'username'=>'testuser',
'userSecrectToken'=>'asd88225asdaweqs8899eqweiou'
'requestType'=>'getUserOrders',