redirect(); } /** * Summary of handleProviderCallback * line 登入後查詢 * @return void */ public function handleProviderCallback() { // 获取 LINE 用户信息 $user = Socialite::driver('line')->user(); // 从返回的信息中获取数据 $lineId = $user->getId(); // LINE ID $name = $user->getName(); // 用户名 $avatar = $user->getAvatar(); // 用户头像 // 查询数据库中是否已有此用户 $existingUser = Member::where('line_id', $lineId)->first(); if ($existingUser) { // 如果用户存在,使用 guard 'member' 登录 Auth::guard('member')->login($existingUser); } else { $user = [ 'name' => $name, 'line_id' => $lineId, 'password' => bcrypt(env('DEFAULT_PASSWORD')), 'avatar' => $avatar, 'phone' => '', 'source' => 'cafeg', ]; // 如果用户不存在,创建新用户并登录 $newUser = Member::create($user); Auth::guard('member')->login($newUser); } $user = Auth::guard('member')->user(); if (!$user->email) { return redirect()->route('member.profile'); } else { // 登录成功后重定向到特定页面 return redirect()->route('member.index'); } } }