Php 基于用户类型Laravel的Facebook和Google登录
我正在Laravel网站上工作,我刚刚集成了社交网站插件,让用户也可以注册谷歌和Facebook。这是正常工作,但在这里我想把用户注册前的条件。 我有两种类型的用户: 私人卖家 批发商 我想知道注册谷歌或Facebook的用户类型。如果用户是卖家,我只想将值保存在存储其他用户数据(如电子邮件、用户名、令牌)的同一个表中。 为此,我将单选按钮放在注册按钮之前,但我不知道如何在注册之前,获取并使用这个单选按钮值和注册按钮 有什么建议吗 刀片 控制器Php 基于用户类型Laravel的Facebook和Google登录,php,laravel,laravel-socialite,Php,Laravel,Laravel Socialite,我正在Laravel网站上工作,我刚刚集成了社交网站插件,让用户也可以注册谷歌和Facebook。这是正常工作,但在这里我想把用户注册前的条件。 我有两种类型的用户: 私人卖家 批发商 我想知道注册谷歌或Facebook的用户类型。如果用户是卖家,我只想将值保存在存储其他用户数据(如电子邮件、用户名、令牌)的同一个表中。 为此,我将单选按钮放在注册按钮之前,但我不知道如何在注册之前,获取并使用这个单选按钮值和注册按钮 有什么建议吗 刀片 控制器 class SocialController ex
class SocialController extends Controller
{
public function redirectToProvider($provider)
{
return Socialite::driver($provider)->redirect();
}
public function handleProviderCallback($provider)
{
try {
$user = Socialite::driver($provider)->stateless()->user();
// $users = User::where(['email' => $user->getEmail()])->first();
$finduser = User::where('provider_id', $user->id)->first();
// $user = Socialite::driver('facebook')->user();
// $finduser = User::where('provider_id', $user->id)->first();
if ($finduser) {
Auth::login($finduser);
return redirect('/');
} else {
$newUser = User::create(['name' => $user->name, 'email' => $user->email,'provider' => $provider, 'provider_id' => $user->id]);
Auth::login($newUser);
return redirect('/');
}
} catch (Exception $e) {
return redirect('auth/facebook');
}
}
Route::get('auth/{provider}', 'SocialController@redirectToProvider');
Route::get('auth/{provider}/callback', 'SocialController@handleProviderCallback');
class SocialController extends Controller
{
public function redirectToProvider($provider)
{
return Socialite::driver($provider)->redirect();
}
public function handleProviderCallback($provider)
{
try {
$user = Socialite::driver($provider)->stateless()->user();
// $users = User::where(['email' => $user->getEmail()])->first();
$finduser = User::where('provider_id', $user->id)->first();
// $user = Socialite::driver('facebook')->user();
// $finduser = User::where('provider_id', $user->id)->first();
if ($finduser) {
Auth::login($finduser);
return redirect('/');
} else {
$newUser = User::create(['name' => $user->name, 'email' => $user->email,'provider' => $provider, 'provider_id' => $user->id]);
Auth::login($newUser);
return redirect('/');
}
} catch (Exception $e) {
return redirect('auth/facebook');
}
}