Поиск идентификатора пользователя с помощью AWS / iOS - PullRequest
0 голосов
/ 15 мая 2019

Я начинаю находить способ использовать AWS. Но у меня есть простой вопрос, на который я не нашел ответа, пытаясь найти то, что пришло мне в голову. Вот соответствующий рабочий код:

override func viewDidLoad() {
    super.viewDidLoad()
    ...

    if AWSSignInManager.sharedInstance().isLoggedIn {
        print("We are already logged in!")
        // I would like to display the user identification of the current user.
    }

    ...
}

На месте комментария я хотел бы напечатать идентификатор текущего пользователя (когда кто-то вошел в систему). Я предполагаю, что должен быть способ. Как я могу это сделать?

1 Ответ

1 голос
/ 16 мая 2019

Возможно, рассмотрим поле Cognito «username», которое является уникальным идентификатором (неизменяемым) для каждого пользователя:

        let amc = AWSMobileClient.sharedInstance();
        if (amc.isSignedIn) {
             print ("Signed in with username=\(amc.username!)")
        }

мы также можем использовать getUserAttributes для извлечения всех атрибутов следующим образом:

            // See all the attributes the user has
            amc.getUserAttributes { (attributes, error) in
                if let attributes = attributes {
                    for (key, value) in attributes {
                        print("\(key): \(value)")
                    }
                } else if let error = error {
                    print("Unexpected error: \(error.localizedDescription)")
                }
            }
...