AWS Mobile HubでUserPoolsを使用しています。私はFacebookやG +のようなプロバイダとログインすることができました。しかし、AWS UserPoolsでログインしようとすると、私はそうすることはできません。私は正常に登録し、UserPoolに完全に接続することができます(存在しないユーザー7人の間違ったパスワードを認識します)。下記の方法でログインすると、エラーが表示されます。AWS Cognito User Pool - 「 'userName'の値nullが制約を満たすのに失敗しました:メンバーはヌルであってはなりません」 - iOS
"1 validation error detected: Value null at 'userName' failed to satisfy constraint: Member must not be null"
実際にユーザー名とパスワードが正しいとはどういうことか分かりません。 (ハードコードされていても)。ここでは、私がログインに使用しているコードを見ることができます:
let pool = AWSCognitoIdentityUserPool(forKey: "UserPool")
let user: AWSCognitoIdentityUser = pool.getUser(textFieldEmail.text!)
user.getSession(textFieldEmail.text!, password: textFieldPassword.text!, validationData:nil, scopes: nil).continueWithBlock { (task:AWSTask) -> AnyObject? in
if task.error == nil {
print("Got: \(task.result)")
} else {
print("Error while logging in: \(task.error?.userInfo["__type"]) with message: \(task.error?.userInfo["message"])")
}
return nil
}
私は本当にいくつかの助けに感謝します!私は、検証データに関する情報を追加しようとしました。次のようなもの:
let userName:AWSCognitoIdentityUserAttributeType = AWSCognitoIdentityUserAttributeType()
userName.name = "userName"
iserName.value = textFieldEmail.text
しかし、やはり動作しません。
ありがとうございます!
答えは見つかりましたか?私は現在、ここで同じ問題に直面しています。それはイライラしている。 – tyegah123
いいえ! :(@ tyegah123 –
SDKを最新バージョンにアップグレードして解決しました(2.4.9):D – tyegah123