我目前有一个设置,我的移动前端执行图像的AWS s3上载。 s3上传触发AWS lambda函数,该函数启动执行各种作业和操作的AWS步骤函数(状态机)。如何接收来自AWS S3的响应,触发了lambda函数?
我正在寻找最好的(也是最省时的)方法,以便将输出功能返回到移动设备。
一种方法是监视状态机的executionARN
,并在完成时提取数据。这似乎是awslabs lambda-refarch-imagerecognition实现here的情况。但是,我的前端是移动设备,我不想发送和接收很多请求来检查状态机是否完成。
另一个可能的解决方案是重构该过程,以便s3上传是独立事件,一旦成功,向AWS API网关发出API请求,以触发该步骤功能。 API POST请求将返回响应。这里的问题是,应用程序必须等待s3响应才能继续启动状态机。
是否有更好的方法来执行这个序列并接收响应。理想情况下,s3上传将返回状态机的完整响应。这样就有一个请求(图片上传)和一个响应。
您可以尝试设置您的前端将要侦听的回调URL,并且一旦该lambda完成后,将响应发送到回调URL并让移动设备知道它已完成。 –
你看过亚马逊SNS移动推送通知吗? – jarmod