Laravel Socialite 中的 Google 登录信息是否包含用户的电话号码?

sti*_*254 5 php laravel laravel-5 laravel-socialite laravel-7

我在 Laravel 中使用 Socialite 实现了 Google 登录。我使用的示例仅包含用户的姓名、google_id、电子邮件和个人资料图片。有没有办法从 Google 回调中获取电话号码?或者它甚至包含这个数字?这是处理回调的函数:

public function handleProviderCallback()
{
    try {
        $user = Socialite::driver('google')->user();
    } catch (\Exception $e) {
        return redirect('/login');
    }
    // check if they're an existing user
    $existingUser = User::where('email', $user->email)->first();
    if($existingUser){
        // log them in
        auth()->login($existingUser, true);
    } else {
        // create a new user
        $newUser                  = new User;
        $newUser->name            = $user->name;
        $newUser->email           = $user->email;
        $newUser->google_id       = $user->id;
        $newUser->avatar          = $user->avatar;
        $newUser->avatar_original = $user->avatar_original;
        $newUser->save();
        auth()->login($newUser, true);
    }
    return redirect()->to('/');
}
Run Code Online (Sandbox Code Playgroud)

use*_*950 0

这是不可能的。您应该添加一个中间件来验证您的用户是否拥有电话。这样,您就可以确定您的用户无论如何注册都会提供电话。