아미(아름다운미소)

[IOS / SWIFT] UserDefault을 사용한 자동로그인 본문

랭귀지/SWIFT

[IOS / SWIFT] UserDefault을 사용한 자동로그인

유키공 2018. 2. 22. 10:30

자동로그인

import UIKit

class LoginViewController: UIViewController {

    @IBOutlet weak var userNm: UITextField! //ID 텍스트 필드
    @IBOutlet weak var pw: UITextField! //pw 텍스트 필드
    
    @IBOutlet weak var loginwebView: UIWebView! // webview 
    @IBOutlet weak var autoLogin: UISwitch! // 스위치
    @IBOutlet weak var loginComponent: UIView!
    
    override func viewDidLoad() {
        super.viewDidLoad()
    }
    
    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
    }
   

@IBAction func LoginBtn(_ sender: Any) { //로그인 버튼 클릭

        let userNm = userNm.text //id값
        let pw = pw.text //pw
        if autoLogin.isOn{ //스위치가 켜져있을때
            let dataSave = UserDefaults.standard // UserDefaults.standard 정의
            dataSave.setValue(userNm, forKey: "save_userNm") // save_userNm 키값에 id값 저장
            dataSave.setValue(pw, forKey: "save_pw") // save_pw 키값에 pw값 저장
            
            UserDefaults.standard.synchronize() // setValue 실행
        } else { // 스위치가 꺼져있을때
            let dataSave = UserDefaults.standard
            dataSave.setValue("nil", forKey: "save_userNm")
            dataSave.setValue("nil", forKey: "save_pw")
            
            UserDefaults.standard.synchronize()
        }
        
        print("\(UserDefaults.standard.value(forKey: "save_userNm")!)")
        print("\(UserDefaults.standard.value(forKey: "save_pw")!)")

        let url = URL(string: "https://192.168.0.1/login.php")
        let request = NSMutableURLRequest(url : url! as URL)
        request.httpMethod = "POST"
        let bodyData: String = "user_login=" + userNm! + "&user_pw=" + pw!
        request.httpBody = bodyData.data(using: String.Encoding.utf8)
        loginwebView.loadRequest(request as URLRequest)
    }
}
Comments