1

firebase와 작동하는 페이스 북 로그인 시스템이 있지만 사용자가 내 firebase에 있는지 확인하고 싶습니다. (추가하지 않으려 고하고 있기 때문에 존재하는지 확인하고 싶습니다. 나는 프로파일을 완료하기 위해 다른 페이지로 사용자를 리디렉션하고 싶습니다. 일단 완료되면 firebase로 보내려고합니다.)Firebase 페이 스북 로그인 확인 사용자가 존재하는지 확인

사용자가 내 db에 있는지 확인하면됩니다. 다음은 시도한 코드이지만 nil 오류를 반환하고 사용자를 firebase에 자동으로 추가합니다.

let credential = FIRFacebookAuthProvider.credentialWithAccessToken(FBSDKAccessToken.currentAccessToken().tokenString) 


FIRAuth.auth()?.signInWithCredential(credential) { (user, error) in 
     // ... 

} 
+0

확인 ... –

+0

당신이 줄 수있는 경우 저 방법에 관하여 연결 또는 sth? firebase 웹 사이트에서 찾을 수 없기 때문에. –

+0

나중에 확인하십시오 [이 링크] (https://firebase.google.com/docs/auth/ios/manage-users) .. 확인이 페이지의 끝에 reAuthenticate 메소드 –

답변

2

reauthenticateWithCredential 방법을 사용하여 사용자의 존재 여부를 확인할 수 있습니다.

확인 this Doc., 섹션 -> 사용자를 다시 인증

let user = FIRAuth.auth()?.currentUser 
var credential: FIRAuthCredential 

// Prompt the user to re-provide their sign-in credentials 

user?.reauthenticateWithCredential(credential) { error in 
    if let error = error { 
    // An error happened. 
    } else { 
    // User re-authenticated. 
    } 
} 

재 인증 즉, 사용자가 존재하는 것을 의미 성공적으로 사용자 ... 재 인증 방법

+1

주요 문제는 사용자가 계정을 가지고 있지만 앱을 삭제 한 다음 다시 설치하면이 코드가 작동하지 않기 때문입니다. currentUser는 nil입니다. 더 나은 방법은 객체가 존재하는 경우 .reference(). child ("users/currentUserId") (또는 로그인 한 사용자의 데이터를 저장할 위치)를 확인하는 것입니다. –