Vue.js Firebase 배포 개요

Vue.js 프로젝트에 Firebase 도입(메일 주소 인증 기능)의 개요를 정리한다. (학습 용)

Firebase란?


  • Google이 운영하는 소셜 로그인이나 실시간 데이터베이스 기능을 제공하는 서비스(mBaaS).
  • 인증 및 데이터 관리를 위한 백엔드 시스템을 준비할 필요가 없어 프런트엔드 개발에 전념할 수 있다.


  • Firebase 배포



    프로젝트 만들기


  • Firebase 콘솔에 로그인.
  • 프로젝트 추가를 선택합니다.
  • 필요한 사항을 입력합니다.
  • 프로젝트 이름 (필수)
  • Google 애널리틱스 설정 사용 (선택 사항)

  • Firebase 프로젝트 설정


  • 콘솔에서 만든 프로젝트를 선택합니다.
  • 아래 이미지의 ""부분을 선택합니다.
  • Firebase를 도입하는 앱의 닉네임(Firebase 콘솔상에 표시된다)을 등록.
  • 다음과 같이 프로젝트에 대한 구성 정보가 표시됩니다 (나중에 콘솔에서 확인 가능).

  • Vue.js 프로젝트에 적용


  • Firebase 모듈 설치.
  •    npm install --save firebase
    
  • 위의 설정 정보를 읽습니다.
  •    import firebase from 'firebase'
       ...
       const config = {
           apiKey: 'YOUR_API_KEY',
           authDomain: 'YOUR_AUTH_DOMAIN',
           databaseURL: 'YOUR_DATABASE_URL',
           projectId: 'YOUR_PROJECT_ID',
           storageBucket: 'YOUR_STORAGE_BUCKET',
           messagingSenderId: 'YOUR_MESSAGING_SENDER_ID',
           appId: 'YOUR_APP_ID
       }
       firebase.initializeApp(config);
    

    이메일 주소/비밀번호 인증 설정



    Firebase 프로젝트


  • Firebase 콘솔의 프로젝트 화면 왼쪽에 있는 “Authentication”을 선택합니다.
  • Sign-in method 탭을 선택.
  • 프로바이더의 「메일 주소/패스워드」를 선택해, 「활성화한다」를 체크한 후, 보존.
  • 사용자 탭을 선택합니다.
  • '사용자 추가'를 누르고 앱 사용자의 이메일 주소/비밀번호를 입력한 다음 '사용자 추가'.

  • Vue.js 프로젝트



    로그인 처리


    <template>
        ...
        <input type="email" placeholder="Email" v-model="email">
        <input type="password" placeholder="Password" v-model="password">
        <button @click="signIn">Signin</button>
        ...
    </template>
    
    <script>
    ...
        methods: {
        signIn: function () {
          firebase.auth().signInWithEmailAndPassword(this.email, this.password).then(
              // 認証成功時の処理
            ).catch(error=> {
              // 認証失敗時の処理
            })
        }
        ...
      }
    </script>
    

    로그아웃 처리


    <template>
    ...
    <button @click="signOut">Sign Out</button>
    ...
    </template>
    
    <script>
    ...
        methods: {
          signOut: function () {
              firebase.auth().signOut().then(() => {
                    // ログアウト成功時の処理
              })
          }   
      }
    ...
    </script>
    

    참고문헌


  • Firebase(공식)
  • 좋은 웹페이지 즐겨찾기