[英]AWS Cognito: immediately signed-put after sign-in
我使用展位Cognito用戶池和Cognito身份池來登錄用戶。
我想完成一個簡單的任務,即可在iOS應用程序(Swift應用程序)上登錄用戶。
我的應用基於Mobile Hub幫助的自定義版本,以允許使用Cognito用戶池。 查看帶有Cognito用戶池的Swift示例登錄應用程序(使用aws-mobile hub-helper)
應用程序中有兩個步驟:第一個是僅啟動,第二個是在用戶觸摸“登錄”按鈕后登錄:為了最小化,然后對用戶憑據進行硬編碼。
在第一步期間,用戶必須接收未授權的identityId。 然后在第二步之后,用戶收到一個auth identityId。
在按下登錄(步驟1)之前,有2個對AWS的請求:
按下簽名后,還有3個請求:
請求5之前-AWSCognitoIdentityService.GetId-用戶已登錄,如AWSIdentityManagerDidSignInNotification
上的觀察者所指示。
請求5之后,將檢索IdentityId。 但是在觀察者通知通知AWSIdentityManagerDidSignOutNotification
,用戶立即AWSIdentityManagerDidSignOutNotification
。
會發生什么?
查看您的日志會有所幫助。 但是您需要意識到的是,使用鑰匙串和NSUserDefaults的cognito sdk會記住內容(會話ID,身份ID等)。 因此,當您第二次運行硬編碼測試時,測試的行為可能會有所不同。 如果要開始清理,請轉到模擬器菜單,然后選擇重置內容和設置(這將清除鑰匙串-存儲會話的內容,並清除NSUserDefaults存儲活動的會話)。
我剛剛在分支AddAllMobileHubDemos上推送了新版本的倉庫。 最新版本的存儲庫已定義3個目標。 登錄,MySampleApp和Dom。 登錄是我的舊登錄應用程序的一個版本,經過修改可以與mobile-hub-helper一起使用。 MySampleApp是一個完整下載的MobileHub應用程序,內置了Cognito用戶池。還有Dom(單頁硬編碼登錄應用程序)。
還要從最新的push中 (在同一存儲庫中)檢查cognito-diagram cognito- diagram.pdf ,其中列出了一些可能的錯誤。 該版本具有我上面描述的功能。
如果您發布日志可能會幫助我更具體。 在某些情況下,AWSIdentityManager會將您注銷(例如,如果您嘗試合並兩個身份...,如果您使用硬編碼的usrname和密碼,然后在不注銷的情況下進行更改,則可能會很好。)
布魯斯
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.