问题描述:AWS SNS主题无法将完整数据发送给订阅的AWS Lambda。
解决方法: 当SNS主题触发AWS Lambda函数时,有时候Lambda函数可能无法接收到完整的SNS消息。这是因为SNS默认情况下将消息内容作为字符串发送给Lambda函数,而不是作为原始JSON对象。为了解决这个问题,可以使用以下两种方法之一:
方法1:使用Lambda代理集成
方法2:手动解析SNS消息
import json
def lambda_handler(event, context):
sns_message = json.loads(event['Records'][0]['Sns']['Message'])
# 处理sns_message
json.loads()函数将SNS消息从字符串解析为JSON对象。sns_message。通过使用以上的解决方法之一,您将能够接收到完整的SNS消息,并在AWS Lambda函数中进行处理。