demo κ°λ° - 14 : email μΈμ¦ (ft. μ€μ€κ° μ κ²)
κ·Έλ νλ² μ€κ°μ κ² νμλλ° κ°λ°νλ€κ° λ λ§νμ
νλμ κΈ°λ₯μ λ μλ²½νκ² κ΅¬νμ λͺ»ν΄μ μ€μ€κ°μ κ²μ΄λΌκ³ λ¬μλ€.
μΌλ¨ μ΄λ―Έ λ±λ‘λ μ¬μ©μλΌλ©΄ λ°λ‘ Control νμ΄μ§λ‘ λκ²¨μΌ νκ³
λ±λ‘λμ§ μμ μ¬μ©μλ©΄ email μΈμ¦μΌλ‘ λκ²¨μΌ νλ€.
μ΄ λΆλΆμμ λ§μ κ²λ€μ΄ νμμ μΈ Apple νκ²½μμ μλλκ² λ§μλ€.
μΌλ¨ μ΄λ©μΌ μΈμ¦μ μμνκ³ μ λ ₯λ μ΄λ©μΌμ μ ν¨μ±μ κ²μ¬νλ ν¨μλ₯Ό μλμ κ°μ΄ μμ±νλ€.
//login λ²νΌμ λλ μ μ μ΄λ©μΌ μΈμ¦ μμ
@IBAction func loginBtn(_ sender: Any) {
if let email = emailTextField.text {
if isValidEmail(testStr: email){
}
}
}
//μ΄λ©μΌ μ ν¨μ± κ²μ¬
func isValidEmail(testStr:String) -> Bool {
let emailRegEx = "[A-Z0-9a-z._%+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,64}"
let emailTest = NSPredicate(format:"SELF MATCHES %@", emailRegEx)
return emailTest.evaluate(with: testStr)
}
μ¬κΈ°κΉμ§ νκ³ λλ©΄ μ΄λ©μΌμ ν°λ²νΈλ κΈ°κΈ° λ§₯μ£Όμμ ν¨κ» μνΈνλ₯Ό 3λ² μ§νν΄μ λ겨μΌνλ€.
κ·Έλ¦¬κ³ κ·Έ μ΄λ©μΌλ‘ μΈμ¦λ²νΈλ₯Ό μ μ‘ν΄μ μΈμ¦λ²νΈλ₯Ό μ λ ₯νκ³ νμΈλ°κ² ν΄μΌνλ€.
κ·Όλ° Appleμμλ λλ°μ΄μ€μ κ΄λ ¨λ μ΄λ ν μ 보λ κ°λ°μ μ μ₯μμ μ κ·Όν μ μκ² νκ³ μμ΄μ
μ¬μ©μμ ν΄λν° λ²νΈλ λ¬Όλ‘ MACμ£Όμλ κ°κ³ μ€μ§ λͺ»νλ€.
κ²λ€κ° λ ν° λ¬Έμ λ Email μ μ‘λ ν μ μλ€.....
λ°©λ²μ SMTP νλ‘ν μ½μ μ¬μ©νμ¬ μλ²λ‘ μ΄λ©μΌμ 보λ΄λ λ°©λ² λΏμΈλ°
μ΄λ κ² νλ©΄ 볡μ‘ν΄μ§λ―λ‘... μ΄λ»κ² ν΄μΌν μ§ κ³ λ―Όμ΄λ€...