我有一個應用程序,用戶可以匿名使用或通過Facebook登錄。所有都與Cognito相關聯。當使用應用程序時,他們會調用lambda來保存他們喜歡的項目。我使用唯一的cognito身份標識將這些項目保存在DynamoDB表中。這個唯一的ID在lambda事件中提供;在Cognito中切換身份 - 如何處理身份證的合併
{
...,
event.requestContext.identity.cognitoIdentityId: 'ap-..
...
}
我在如何解決這種情況有點損失。
T1
用戶通過Facebook登錄並保存一些項目。它們被保存在一個DynamoDB表中,並且被稱爲ap-1。都好。
T2
用戶再次刪除應用程序和下載一個月後。這次他們跳過登錄並且在ap-2標識下被授予匿名訪問權限。它們保存了更多的項目,這些項目保存在DynamoDB的id ap-2下。
T3
用戶意識到他們忘記通過Facebook登錄,這樣他們完成Facebook登錄。由於他們已經通過Facebook登錄,因此他們將會發布id ap-1。這將ap-2合併爲ap-1,並對所有請求使用ap-1。現在他們將看到從T1中保存的所有項目,但不會從T2中保存。
有什麼辦法可以在此處合併事件或處理更新記錄?我找不到任何文檔。