티스토리 뷰

반응형
회원가입을 위해서는 회원 데이터베이스를 만들고 서버와 통신을 하는 코드를 작성해야합니다
하지만 Firebase Auth 를 사용하면 간단히 신규 회원가입 등록을 구현할 수 있어요

//

//  SignUpViewController.swift

//  FirebasePractice

//

//  Created by eunjin Jo on 2017. 9. 18..

//  Copyright © 2017 eunjin. All rights reserved.

//


import UIKit

import FirebaseAuth


class SignUpViewController: UIViewController {

    

    @IBOutlet weak var emailTextField: UITextField!

    @IBOutlet weak var passwordTextField: UITextField!

    

    @IBAction func signUpAction(_ sender: Any) {

        doSignUp()

    }


    override func viewDidLoad() {

        super.viewDidLoad()


        // Do any additional setup after loading the view.

    }


    override func didReceiveMemoryWarning() {

        super.didReceiveMemoryWarning()

        // Dispose of any resources that can be recreated.

    }

}


extension SignUpViewController{

    

    func showAlert(message:String){

        let alert = UIAlertController(title: "회원가입 실패",message: message, preferredStyle: .alert)

        alert.addAction(UIAlertAction(title: "확인", style: UIAlertActionStyle.default))

        self.present(alert, animated: true, completion: nil)

    }

    

    func doSignUp(){

        

        if emailTextField.text! == ""{

            showAlert(message: "이메일을 입력해주세요")

            return

        }

        

        if passwordTextField.text! == ""{

            showAlert(message: "비밀번호를 입력해주세요")

            return

        }

        

        signUp(email: emailTextField.text!, password: passwordTextField.text!)

        

    }

    

    

    func signUp(email:String,password:String){

        

        Auth.auth().createUser(withEmail: email, password: password, completion: {

            

            (user, error) in

            

            if error != nil{

                

                if let ErrorCode = AuthErrorCode(rawValue: (error?._code)!) {

                    

                    switch ErrorCode {

                        

                    case AuthErrorCode.invalidEmail:

                        self.showAlert(message: "유효하지 않은 이메일 입니다")

                        

                    case AuthErrorCode.emailAlreadyInUse:

                        self.showAlert(message: "이미 가입한 회원 입니다")

                        

                    case AuthErrorCode.weakPassword:

                        self.showAlert(message: "비밀번호는 6자리 이상이여야해요")

                        

                    default:

                        print(ErrorCode)

                    }

                }

                

            } else{

                print("회원가입 성공")

                dump(user)

            }

        })

    

    }

}



위와 같이 회원가입 코드를 간단히 구현하고 회원가입을 해주면 






프로젝트 Auth에 사용자가 추가 된답니당 매우 간편하죠?!ㅎㅎ

반응형
댓글