AWS APIGateway 和 Lambda - 如何在 iOS 应用程序终止之前立即调用函数?

AWS APIGateway & Lambda - How to call function right before iOS App terminates?

我使用 AWS 已经有一段时间了,我开始掌握 APIGateway 和 Lambda 的窍门。我刚刚制作了一个 Lambda 函数,它接收用户输入的用户名,然后使用 AdminDeleteUser 函数从用户池中删除该用户,它工作正常。我什至通过 APIGateway 将其设置为在 XCode 中使用,并且它也能正常工作。

问题
我的问题是,当用户终止 iOS 应用程序时,我正试图让 Lambda 函数 运行 正确。我正在使用 NotificationCenter 观察器来观察应用程序何时终止,除了我相信 Lambda 函数的调用在应用程序完全终止后被取消之外,一切都运行良好,这意味着它无法完成完整的请求。我的 lambda 函数主要检查接收到的用户名是否是未经确认的用户,如果未经确认,则将其从用户池中删除。我在屏幕上执行此操作,用户必须确认通过 SMS

发送的确认码

问题
所以我想我的问题是,

  1. 是否可以在应用程序终止时调用 Lambda 函数?
  2. 如果没有,是否可以在App退出前,在没有确认的情况下将当前用户从用户池中删除?

在此先感谢您。

听起来正在发生的事情正是您上面描述的。在与服务建立连接之前,应用程序正在退出。

更好的设计可能是在 X 间隔 (using a Lambda scheduled event) 有一个进程 运行,以自动从您的数据存储中删除任何未确认的用户。

编辑:

在搜索未确认的用户时,您应该可以使用UserCreateDate 字段来检查用户是否在您指定的时间内注册。如果 'createDate' 属于该时间,则忽略该用户。

ListUsers API