iOS
...
Users
iOS ParseSwift SDK: 사용자 등록 구현 방법 안내
8 분
사용자 등록 소개 대부분의 실제 애플리케이션은 사용자 기반 기능을 활용하여 고객에게 보다 개인화된 서비스를 제공합니다 이러한 기능은 고객이 앱에 가입해야 합니다 back4app 플랫폼과 parseswift sdk parseswift sdk , 이를 통해 앱에서 이러한 기능을 간단하고 빠르게 구현할 수 있습니다 전제 조건 이 튜토리얼을 완료하려면 다음이 필요합니다 back4app에서 생성된 앱 쿼리를 테스트할 기본 ios 앱 목표 ios 앱에서 parseswift sdk parseswift sdk 를 사용하여 사용자 등록 기능을 구현하는 것입니다 1 사용자 등록 흐름 이해하기 ios 앱에 가입 옵션을 통합하기 위해서는 parseuser parseuser 프로토콜을 준수하는 객체를 생성해야 합니다 이 프로토콜은 back4app 이 로그인 정보를 저장하고 관리할 수 있도록 하는 주요 필수 속성을 구현합니다 다음 코드 조각은 사용자 객체를 어떻게 구현할 수 있는지를 보여줍니다 1 import foundation 2 import parseswift 3 4 struct user parseuser { 5 // additional properties required by the parseuser protocol 6 var authdata \[string \[string string]?]? 7 var originaldata data? 8 var objectid string? 9 var createdat date? 10 var updatedat date? 11 var acl parseacl? 12 13 // main properties linked to the user's information 14 var username string? 15 var email string? 16 var emailverified bool? 17 var password string? 18 19 // a custom property 20 var age int? 21 } 위의 코드 조각에서 볼 수 있듯이, parseswift parseswift 는 사용자 객체에 대해 매우 유연한 구현을 허용합니다 age age 필드와 유사하게, 필요에 따라 추가 필드를 얼마든지 추가할 수 있습니다 사용자 객체가 준비되면, user user 객체는 parseuser parseuser 프로토콜을 통해 모든 필요한 사용자 작업을 처리할 수 있는 메서드 세트를 제공합니다 예를 들어 가입 , 로그인 , 로그아웃 , 등 다음 단계에서는 가입 요청을 구현하는 방법을 살펴보겠습니다 2 가입 요청 생성 사용자가 계정 정보를 입력하는 해당 양식을 추가하는 것으로 시작합니다 viewcontroller viewcontroller ( uiviewcontroller uiviewcontroller )의 하위 클래스가 양식을 구현하는 클래스가 됩니다 아래 코드 조각에서는 기본 가입 양식이 가져야 할 주요 요소를 강조합니다 1 import uikit 2 import parseswift 3 4 class viewcontroller uiviewcontroller { 5 // user inputs 6 @iboutlet weak var usernametextfield uitextfield! 7 @iboutlet weak var emailtextfield uitextfield! 8 @iboutlet weak var passwordtextfield uitextfield! 9 10 // sign up button 11 @iboutlet weak var signupbutton uibutton! 12 13 override func viewdidload() { 14 super viewdidload() 15 16 // add additional code if needed 17 } 18 19 // called when the user taps on the signupbutton 20 @ibaction func handlesignup( sender any) { 21 guard let username = usernametextfield text, let password = passwordtextfield text else { 22 return showmessage(title "error", message "the credentials are not valid ") 23 } 24 25 signup(username username, email emailtextfield text, password password) 26 } 27 28 // this method prepares and registers the new user 29 private func signup(username string, email string?, password string) { 30 // todo here we will implement the signup action 31 } 32 33 // presents an alert with a title, a message and a back button 34 func showmessage(title string, message string) { 35 let alertcontroller = uialertcontroller(title title, message message, preferredstyle alert) 36 37 alertcontroller addaction(uialertaction(title "back", style cancel)) 38 39 present(alertcontroller, animated true) 40 } 41 } 레이아웃 부분은 개발자에게 맡깁니다 필요에 따라 시각적 구성 요소를 통합하고 설정할 수 있습니다 다음 단계에서는 signup(username\ email\ password ) signup(username\ email\ password ) 메서드를 구현합니다 3 가입 기능 구현 사용자를 등록하는 첫 번째 단계는 해당 자격 증명을 가진 사용자 사용자 객체의 인스턴스를 갖는 것입니다 사용자 이름 사용자 이름 과 비밀번호 비밀번호 필드는 새로운 사용자를 등록하는 데 필수이며, 나머지 필드는 선택 사항입니다 따라서 사용자 사용자 객체를 인스턴스화하는 일반적인 방법은 다음과 같습니다 1 var newuser = user(username "acoolusername", email "myemail\@domain net", password "mysecurepassword") 2 newuser age = 25 추가적으로, 우리는 나이 나이 와 같은 사용자 정의 필드의 초기 값도 제공해야 합니다 다음 단계는 가입 작업을 수행하는 것입니다 parseuser parseuser 프로토콜은 signup( ) signup( ) 메서드를 구현하여 가입 요청을 back4app 애플리케이션에 보낼 수 있게 합니다 signup( ) 에 대한 세 가지 유형의 구현이 있습니다 사용 사례에 따라 적절한 것을 선택해야 합니다 이제 signup(username\ email\ password ) signup(username\ email\ password ) 을 viewcontroller viewcontroller 1 class viewcontroller uiviewcontroller { 2 3 4 private func signup(username string, email string?, password string) { 5 var newuser = user(username username, email email, password password) 6 newuser age = 25 // warning this should be entered by the user, not hardcoded 7 8 //warning only use one of the following cases, the synchronous or the asynchronous case 9 10 // the below registers the user synchronously and returns the updated user object (stored on your back4app application) 11 do { 12 let signedupuser = try newuser signup() 13 showmessage(title "signup succeeded", message "\\(user)") 14 usernametextfield text = nil 15 emailtextfield text = nil 16 passwordtextfield text = nil 17 } catch let error as parseerror { 18 showmessage(title "error", message error message) 19 } catch { 20 showmessage(title "error", message error localizeddescription) 21 } 22 23 // the below registers the user asynchronously and returns the updated user object (stored on your back4app application) wrapped in a result\<user, parseerror> object 24 newuser signup { \[weak self] result in 25 switch result { 26 case success(let signedupuser) 27 self? showmessage(title "signup succeeded", message "\\(signedupuser)") 28 self? usernametextfield text = nil 29 self? emailtextfield text = nil 30 self? passwordtextfield text = nil 31 case failure(let error) 32 self? showmessage(title "error", message error message) 33 } 34 } 35 } 36 } 참고 새로운 사용자를 등록하는 것은 signup( ) signup( ) 메서드를 사용하여 자동으로 사용자를 로그인시키므로 사용자가 앱을 계속 사용하기 위해 다시 로그인할 필요가 없습니다 앱의 생애 주기 동안 언제든지 현재 로그인된 사용자에 접근할 수 있습니다 static 속성은 parseuser parseuser 프로토콜에 구현되어 있습니다 1 let loggedinuser user? = user current 이 저장소 에서 위에서 설명한 단계를 따르는 간단한 사용자 등록 앱을 찾을 수 있습니다 결론 back4app 플랫폼은 parseswift sdk parseswift sdk 와 함께 ios 앱에 가입 흐름을 통합하는 빠르고 간단한 방법을 제공합니다 또한, 다음 가이드에서는 로그인, 로그아웃 등과 같은 나머지 절차를 탐구할 것입니다