簡體   English   中英

AWS Cognito檢查並獲取用戶

[英]AWS Cognito check and get users

我正在構建一個使用Amazon MobileHub的iOS應用。 目前,它與Cognito關聯,並且注冊和登錄流程效果很好。

我要實現的目標是使一個用戶能夠將另一個用戶添加為朋友 為了實現這一點,我需要檢查是否存在具有特定用戶名的用戶,如果存在,請獲取一些屬性,例如該目標用戶的名稱。

我試過使用get user> get details函數,但是它給我一個錯誤身份驗證委托未設置

這是我使用的代碼:

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的用戶名和屬性,然后在其中訪問它,但這只會創建兩個不必要的條目。

您會遇到的問題是用戶屬性不是公開可見的。 只有登錄的用戶才能調用GetUser。 如果是后端過程,則可以通過AdminGetUser操作執行此操作,但這看起來是客戶端,所以我不建議這樣做。 解決此問題的唯一真正方法是最終完成您在帖子底部提出的建議。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM