firebase.auth().onAuthStateChanged(function(user) { if (user) { console.log('User is signed in.'); // TODO 인증이 되어있거나 성공했을 경우 했을때 수행할 Code } else { console.log('No user is signed in.'); // TODO 인증이 되어있지 않거나 인증을 해제한 경우 수행할 Code } });
firebase.auth().signOut().then(function() { console.log('Sign-out successful.'); // TODO 로그아웃 (인증 해재 = Token broken?!)을 할 경우 수행할 Code }, function(error) { console.log('An error happened.'); // TODO 로그아웃에 실패할 경우 수행할 Code });
/* 구글 인증을 provider 변수에 대체 */ var provider = new firebase.auth.GoogleAuthProvider(); // OAuth 2.0을 사용할 경우 다음줄 주석 해제 // provider.addScope('https://www.googleapis.com/auth/plus.login'); /* provider(구글 인증) 인증으로 로그인 처리 */ firebase.auth().signInWithPopup(provider) // 팝업 대신 페이지 이동을 할 경우 signInWithRedirect로 변경 .then(function(result) { // 로그인이 성공 했을시 var token = result.credential.accessToken; // 구글 인증 완료된 Token 가져오기 var user = result.user; // 구글 인증된 유저 정보 가져오기 // TODO 구글 로그인이 성공했을 경우 수행할 코드 }).catch(function(error) { // 로그인이 실패 했을시 = 에러를 핸들링 var errorCode = error.code; // 에러 코드 var errorMessage = error.message; // 에러 메세지 console.log(errorMessage); // TODO 구글 로그인이 실패했을 경우 수행할 코드 });
firebase.auth().createUserWithEmailAndPassword(signup_mail, signup_password) .then(function(){ // 메일 회원 가입에 성공 했을때 // 자동으로 로그인 성공으로 간주 = onAuthStateChanged()가 동작함 }).catch(function(error) { // 메일 회원 가입에 실패 했을때 console.log(error.message); });
firebase.auth().signInWithEmailAndPassword(signin_mail, signin_password) .then(function(){ // 메일 회원 로그인 }).catch(function(error) { // 회원 로그인에 실패 했을 경우 console.log(error.message); });