2017-08-19 13 views
5

Tôi đang theo dõi bài viết này để login with Google. Tôi có thể chuyển hướng đến đăng nhập gmail thành công. Ngoài ra, nó đi đến url gọi lại thành công.Nhận địa chỉ email từ mạng xã hội khi đăng nhập bằng Gmail

Dưới đây là mã của tôi

public function showGoogleLoginForm() { 
    $providerKey = \Config::get('services.google'); 
    return \Socialite::driver('google')->scopes(['profile', 'email'])->redirect(); 
} 

Vấn đề

bây giờ tôi đang cố gắng để kiểm tra nếu gọi lại cho tôi địa chỉ email của người dùng hay không. Vì vậy, tôi có thể kiểm tra xem người dùng đó có được đăng ký trong cơ sở dữ liệu của tôi hay không.

Có cách nào để nhận địa chỉ email trong cuộc gọi lại không?

Tôi có thể chuyển hướng người dùng đến đăng nhập gmail và tôi cũng có thể tiếp cận phương thức gọi lại của mình. Trong phương thức callback tôi đã nhận lỗi về mã này: \Socialite::driver('google')->user()

tôi nhận này Error khi tôi sử dụng mã này \Socialite::driver('google')->user();

+0

thêm các thẻ api nữa, như google people api bên cạnh các thẻ laravel –

+0

bạn đã kiểm tra điều này: (từ liên kết ở trên) Tài liệu API của mọi người của Google dường như gợi ý rằng địa chỉ email trở lại như một phần của truy vấn mặc định, nhưng không dường như không đúng. Để giải quyết vấn đề này, bạn cần thêm requestMask.includeField làm tham số trong yêu cầu. –

+0

Bạn có thể chia sẻ một số mã mẫu cho cuộc gọi lại và chuyển hướng không? – Pankaj

Trả lời

2

tôi phải bật Google + API để thoát khỏi lỗi này. Mọi thứ đang hoạt động hoàn hảo ngay bây giờ.

Các vấn đề liên quan