Laravel Vue JWT身份验证-登录后如何自动登录用户

时间:2019-12-26 11:25:36

标签: laravel vue.js jwt-auth

我可以在网上找到任何东西来完成这项工作。我了解必须先生成令牌,然后用户才能登录,但是有没有办法在用户注册后自动登录?这是我的注册方法。

public function register(Request $request)
{
    $v = Validator::make($request->all(), [
        'email' => 'required|string|email|unique:users|max:255',
        'password'  => 'required|min:8|confirmed',
    ]);
    if ($v->fails())
    {
        return response()->json([
            'status' => 'error',
            'errors' => $v->errors()
        ], 422);
    }
    $user = new User;
    $user->email = $request->email;
    $user->password = bcrypt($request->password);
    $user->save();
    return response()->json(['status' => 'success'], 200);
}

2 个答案:

答案 0 :(得分:1)

您正在使用JWT令牌,因此在注册后,您必须发送属于该用户的令牌,该令牌告诉其他API这是已登录的用户。

生成JWT令牌并返回带有令牌的响应

  

$ token = JWTAuth :: fromUser($ user);

     

return response()-> json([''status'=>'success','token'=> $ token],200);

答案 1 :(得分:0)

您可以使用以下方法

  

Auth :: loginUsingId(1);

  

Auth :: login($ user);

相关问题