获取用户属性 AWS Amplify iOS SDK
Get user attributes AWS Amplify iOS SDK
我正在使用 SDK Amplify 构建一个 iOS 应用程序,因此我的用户已在 AWS 上注册。
我的签名 in/sign 已经正常工作,但问题是使用最新版本的 SDK 我完全不知道如何获取注册用户的属性,例如他的姓氏,电子邮件地址等...
有了这个新的 SDK,一切似乎都可以解决 AWSMobileClient
class 但我从这个 class 中看不到任何东西可以帮助我得到我想要的东西。
official documentation 内容贫乏,没有涵盖甚至没有指出我的用例。
如果有人能给我一些提示甚至一些好的资源,我将非常感激!
初始版本中缺少该方法,后来添加了该方法。您可以在最新的 SDK 版本 2.8.x
:
中使用具有以下 API 的 getUserAttributes
public func getUserAttributes(completionHandler: @escaping (([String: String]?, Error?) -> Void))
您可以在这里找到源代码:
谢谢,
洛汗
嗨,YoanGJ 和未来的客人,
根据您的评论,您正在寻找一些示例代码。
AWSMobileClient.sharedInstance().getUserAttributes { (attributes, error) in
if let attributes = attributes {
XCTAssertTrue(attributes.count == 3, "Expected 3 attributes for user.")
XCTAssertTrue(attributes["email_verified"] == "false", "Email should not be verified.")
}else if let error = error {
XCTFail("Received un-expected error: \(error.localizedDescription)")
}
getAttrExpectation.fulfill()
}
此摘录显示了如何调用 getUserAttributes
,它来自发现的集成测试 here。
备注:
确保您在 Cognito 用户池 App 客户端 中配置了相应的属性读写权限,以使用 getUserAttributes
。
配置用户池中的属性读写权限,
User pool -> General settings -> App clients -> Choose your app client
-> Show details -> Set attribute read and write permissions
谢谢!
我正在使用 SDK Amplify 构建一个 iOS 应用程序,因此我的用户已在 AWS 上注册。
我的签名 in/sign 已经正常工作,但问题是使用最新版本的 SDK 我完全不知道如何获取注册用户的属性,例如他的姓氏,电子邮件地址等...
有了这个新的 SDK,一切似乎都可以解决 AWSMobileClient
class 但我从这个 class 中看不到任何东西可以帮助我得到我想要的东西。
official documentation 内容贫乏,没有涵盖甚至没有指出我的用例。
如果有人能给我一些提示甚至一些好的资源,我将非常感激!
初始版本中缺少该方法,后来添加了该方法。您可以在最新的 SDK 版本 2.8.x
:
public func getUserAttributes(completionHandler: @escaping (([String: String]?, Error?) -> Void))
您可以在这里找到源代码:
谢谢, 洛汗
嗨,YoanGJ 和未来的客人,
根据您的评论,您正在寻找一些示例代码。
AWSMobileClient.sharedInstance().getUserAttributes { (attributes, error) in
if let attributes = attributes {
XCTAssertTrue(attributes.count == 3, "Expected 3 attributes for user.")
XCTAssertTrue(attributes["email_verified"] == "false", "Email should not be verified.")
}else if let error = error {
XCTFail("Received un-expected error: \(error.localizedDescription)")
}
getAttrExpectation.fulfill()
}
此摘录显示了如何调用 getUserAttributes
,它来自发现的集成测试 here。
备注:
确保您在 Cognito 用户池 App 客户端 中配置了相应的属性读写权限,以使用 getUserAttributes
。
配置用户池中的属性读写权限,
User pool -> General settings -> App clients -> Choose your app client -> Show details -> Set attribute read and write permissions
谢谢!