Сервер Swift / MongoDB - данные не могут быть прочитаны, потому что они не в правильном формате. - PullRequest
0 голосов
/ 20 сентября 2018

Я занимаюсь разработкой простого приложения с экраном входа.В коде для моего контроллера представления (LoginViewController) я создал следующую функцию, которая должна позволить пользователю зарегистрироваться.Однако, когда я тестирую приложение, консоль говорит мне: «Данные не могут быть прочитаны, потому что они не в правильном формате».

@IBAction func onSignUp(_ sender: Any) {
    let newUser = PFUser()

    newUser.username = usernameField.text as String!
    newUser.password = passwordField.text as String!
    newUser.signUpInBackground { (success: Bool, error: Error?) in
        if success {
            print("Created User")
        } else {
            print(error!.localizedDescription)
        }
    }
}

Я подозреваю, что у меня какая-то ошибка типа?Ожидает ли текстовое поле тип данных, отличный от строки?Есть идеи, почему это происходит?Какие-нибудь известные решения?

1 Ответ

0 голосов
/ 25 сентября 2018

Эти две строки довольно странные:

newUser.username = usernameField.text as String!
newUser.password = passwordField.text as String!

Являются ли переменные username и password в PFUser неявно необязательными необязательными?Даже тогда мы обычно не пишем такой код в Swift.Возможно, мы напишем что-то вроде:

    @IBAction func onSignUp(_ sender: Any) {

        guard let usernameText = usernameField.text, let passwordText = passwordField.text else {return}
        let newUser = PFUser()
        newUser.username = usernameText
        newUser.password = passwordText
        newUser.signUpInBackground { (success: Bool, error: Error?) in
            if success {
                print("Created User")
            } else {
                print(error!.localizedDescription)
            }
        }
    }

Попробуйте это

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...