1

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

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

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

  1. 应用程序终止时是否可以调用 Lambda 函数?
  2. 如果没有,是否可以在应用退出之前将当前用户从用户池中删除,如果他们没有得到确认?

提前谢谢你。

4

1 回答 1

1

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

更好的设计可能是以 X 间隔运行一个进程(使用 Lambda 计划事件),以自动从您的数据存储中删除任何未经确认的用户。

编辑:

在搜索未确认的用户时,您应该能够使用该UserCreateDate字段来检查用户是否在您指定的时间内注册。如果“createDate”在该时间范围内,则忽略该用户。

列表用户 API

在此处输入图像描述

于 2017-03-22T14:38:19.267 回答