iOS
...
Users
Регистрация пользователя с ParseSwift SDK в iOS приложении
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 реализация функции регистрации первый шаг для регистрации пользователя заключается в том, чтобы иметь экземпляр объекта user user с соответствующими учетными данными поля имя пользователя имя пользователя и пароль пароль являются обязательными для регистрации нового пользователя, остальные поля являются необязательными таким образом, типичный способ создать экземпляр объекта user user будет 1 var newuser = user(username "acoolusername", email "myemail\@domain net", password "mysecurepassword") 2 newuser age = 25 кроме того, мы также должны предоставить начальные значения для пользовательских полей, таких как поле возраст возраст , в нашем случае следующий шаг — выполнить действие регистрации протокол parseuser parseuser реализует метод signup( ) signup( ) который позволит нам отправить запрос на регистрацию в приложение back4app существует три типа реализаций для signup( ) 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( ) автоматически выполняет вход пользователя, поэтому пользователю не нужно снова входить, чтобы продолжить использование вашего приложения в любое время в течение жизненного цикла вашего приложения вы можете получить доступ к текущему вошедшему пользователю через статическое свойство, реализованное в протоколе parseuser parseuser 1 let loggedinuser user? = user current в этом репозитории вы можете найти простое приложение для регистрации пользователей, которое следует шагам, описанным выше заключение платформа back4app вместе с parseswift sdk parseswift sdk предлагает быстрый и простой способ интеграции процесса регистрации в ваши ios приложения кроме того, в следующих руководствах мы рассмотрим оставшиеся процедуры, такие как вход, выход и т д