1
현재 사용자가 Facebook에서 로그인 할 수 있도록 내 웹 사이트에 Socialite를 추가하고 있습니다.Laravel Socialite는 맞춤 데이터를 전달하고 검색하나요?
public function redirectToProviderFacebook() {
return Socialite::driver('facebook')->redirect();
}
public function handleProviderCallbackFacebook() {
$userSocial = Socialite::driver('facebook')->user();
$email = $userSocial->getEmail();
if (User::where('email', $email)->count() > 0) {
// log them in
Auth::login(User::where('email', $email)->first());
return redirect()->route('home')->with('info', "You are now signed in.");
} else {
// register an account and log them in
}
}
일반적인 사용자 등록 중에 사용자 이름, 전자 메일 및 암호의 세 가지를 묻습니다. 사용자 이름과 이메일은 사용자 이름이 여러 가지로 묶여 있으므로 내 사이트에서 변경할 수 없습니다.
페이스 북으로 로그인 할 때 문제는 콜백 함수에 새로운 사용자를 등록해야한다는 것입니다. 따라서 사용자 이름을 원하는대로 요청할 수는 없습니다.
기본 사용자 이름을 묻는 메시지가 표시 될 수 있습니까? 그런 다음 리디렉션을 수행하십시오.
return Socialite::driver('facebook')->with('username', $request->username)->redirect();
그런 다음 해당 데이터를 검색하여 콜백 기능의 인증에 사용 하시겠습니까?
왜 당신이 양식을 사용하여 인증 후 사용자의 사용자 이름을 설정하지? –