【发布时间】:2017-10-08 18:25:22
【问题描述】:
我正在尝试从现有的 lambda 函数调用另一个 lambda 函数,如下所示 (python 2.7)
from __future__ import print_function
import boto3
import json
lambda_client = boto3.client('lambda')
def lambda_handler(event, context):
invoke_response = lambda_client.invoke(FunctionName="teststack",
InvocationType='RequestResponse'
)
print(invoke_response)
return str(invoke_response)
我得到的是以下响应,而不是实际结果。当我单独运行 teststack lambda 时,它工作正常,但低于响应而不是 teststack Lambda 函数返回的“测试”。
{u'Payload': <botocore.response.StreamingBody object at ****>, 'ResponseMetadata': {'HTTPStatusCode': 200, 'RequestId': '******', 'HTTPHeaders': {'x-amzn-requestid': '******', 'content-length': '155', 'x-amzn-remapped-content-length': '0', 'connection': 'keep-alive', 'date': 'Sun, 17 Jul 2016 21:02:01 GMT', 'content-type': 'application/json'}}, u'StatusCode': 200}
【问题讨论】:
-
我从这个线程stackoverflow.com/questions/36784925/… THanks 得到了解决方案!
-
@Gricey,另一个问题涉及异步调用(HTTP 202,“事件”)。这是一个同步调用(HTTP 200,“RequestResponse”)。所以...不是重复的。至少不是这个。
-
@GrzegorzOledzki 我链接的副本的答案说他们应该使用
RequestResponse。但是我已经添加了一个答案,以便这里有一些问题可以解决问题。
标签: python python-2.7 aws-lambda