工作:本地 -> Lambda -> SNS 不工作:Lambda -> Lambda -> SNS
在本地运行我的代码时,我能够调用已经部署的 AWS Lambda 函数 (PublishSNS)——基本上是通过 AWS SNS 发送消息的过滤。
将我的本地代码 (Chatreport) 部署到 AWS Lambda 本身后,我无法让现在部署到 Lambda Chatreport 代码调用 PublishSNS。
这似乎不是 IAM 问题,也不是我的环境变量。我已经使用了 InvocationType='RequestResponse' 和 'Event'。
Lambda 到 Lambda 调用有什么我不知道的吗?
s3_client = boto3.client('s3')
lambda_client = boto3.client('lambda')
def _push_to_sns(self):
event_data = dict(
function=self.function,
phone=self.phone,
message=self.commentary
)
lambda_client.invoke(
FunctionName='lambda-publishsns',
InvocationType='RequestResponse',
Payload=json.dumps(event_data)
)