【发布时间】:2017-10-03 12:54:18
【问题描述】:
我正在构建一个使用 Amazon MobileHub 的 iOS 应用程序。目前它与 Cognito 相关联,并且注册和登录流程运行良好。
我想要实现的是让一个用户能够将另一个用户添加为 朋友 可以这么说。为此,我需要检查具有特定用户名的用户是否存在,如果存在,则获取一些属性,例如该目标用户的名称。
我尝试使用 get user > get details 功能,但它给了我一个错误Authentication delegate not set。
这是我使用的代码:
var pool: AWSCognitoIdentityUserPool?
let user = pool?.getUser(usernameField.text!)
self.pool = AWSCognitoIdentityUserPool.init(forKey: AWSCognitoUserPoolsSignInProviderKey)
user?.getDetails().continueWith { (task: AWSTask<AWSCognitoIdentityUserGetDetailsResponse>) -> Any? in
if let error = task.error as NSError? {
print("ERROR: " + error.localizedDescription)
return ""
}
print(task.result)
return ""
}
我想到的一种方法是将用户名和我想要访问的属性存储到 DynamoDB,然后在那里访问它,但这只会创建两个不必要的条目。
【问题讨论】:
-
我知道的不够多,无法发布答案,但我敢打赌,您可以使用 cognito 池中的组和适当的 IAM 权限来执行此操作,以便用户可以互相看到
标签: ios swift amazon-web-services aws-sdk amazon-cognito