使用 Laravel 中的会话自动登录用户

时间:2021-03-11 03:30:09

标签: laravel api authentication

我遇到了一个错误,即用户在从外部网站(支付门户)重定向后自动注销。

我正在尝试使用 session 使用 session 登录用户,但它不起作用。

控制器 1 向外部网站发送 POST 请求

 $userid = Auth::User()->id;
    Session::put('userid', $userid);

从外部网站接收 POST 请求的控制器 2

Auth::loginUsingId(Session::get('userid'));

用户数据在那里,但用户在重定向后被强行注销。

重定向后登录

Authenticate middleware was used: payment. [{"App\\Models\\User":{"id":2,"username":"testuser","accname":"John Smith"}}]

1 个答案:

答案 0 :(得分:0)

控制器 1

$userid = Auth::User()->id;
Session::put('userid', $userid);

控制器 2

$user = User::where("id",Session::get('userid'))->first();
if(isset($user->id)){
  Auth::login($user);
}else{
    return redirect()->guest('login');
}