Swift 尝试使用域中的密码进行身份验证时凭据无效

Swift 尝试使用域中的密码进行身份验证时凭据无效,swift,realm,realm-mobile-platform,Swift,Realm,Realm Mobile Platform,我正在尝试使用如下密码对用户进行身份验证: let syncCredentials = SyncCredentials.usernamePassword(username: email, password: password, register: true) SyncUser.logIn(with: syncCredentials, server: Constants.Realm.Server) { (realmUser, error) in guard let realmUser =

我正在尝试使用如下密码对用户进行身份验证:

let syncCredentials = SyncCredentials.usernamePassword(username: email, password: password, register: true)

SyncUser.logIn(with: syncCredentials, server: Constants.Realm.Server) { (realmUser, error) in
    guard let realmUser = realmUser else {
        DDLogError("\(error)")

        return
    }

    DDLogInfo("realmUser: \(realmUser)")
}
但它会打印出这个错误:

可选(错误域=io.realm.sync Code=611“提供的凭据无效”。UserInfo={statusCode=400,NSLocalizedDescription=提供的凭据无效。})


Server
常量是正确的,因为我可以使用Facebook凭据成功连接到领域对象服务器。

如果您注册了已经存在的用户,则可能会出现此错误,因此如果用户已经注册,请指定
register:false

我认为它也会在第一次调用时抛出错误,但它看起来第一次起作用了。我稍后会尝试,但错误消息非常误导,可以更改吗?此外,关于这方面的最佳实践是什么?尝试使用
true
调用它,然后在错误回调中使用
false
重试?或者有没有办法检查用户是否已经注册?没有办法检查用户是否已经注册,因为这会泄露现有帐户的私人信息,请参阅以供讨论。这不太适用于我的情况,因为我正在通过Firebase UI注册/记录用户,然后尝试在ROS上注册,因此,我想我将尝试
false
然后
true
方案。尽管如此,这个答案仍然有效。