gpt4 book ai didi

amazon-web-services - CDK CustomResource属性错误: Vendor response doesn't contain key in object

转载 作者:行者123 更新时间:2023-12-03 07:12:21 26 4
gpt4 key购买 nike

使用 CDK,我有一个 aws 自定义资源,我想从其响应中获取值。不幸的是,我一直收到标题中的错误。 the response 的简化版本资源调用的 lambda 的如下所示:

public class Response {

private ResponseInfo info;

}

使用此响应的 lambda 处理程序是 here

我在 AWS Lambda 控制台中测试了 lambda 确实返回以下形式的 json:

{
"info": {...}
}

enter image description here

但是当我尝试使用以下方式获取它(从触发 lambda 的自定义资源)时:

flyway_resource.get_response_field("info")

我收到标题中的错误。我有什么想法吗?如何查看自定义资源的响应实际上是什么样子,以便我可以使用正确的键?

您可以查看自定义资源定义here

最佳答案

自定义资源返回的 json 对象没有“info”字段。我将使用 boto3 创建资源并在控制台中打印响应以查看其外观:

类似这样的事情:

    client = boto3.client('Lambda', region_name='ap-southeast-2')
response = client.invoke(
FunctionName='string',
InvocationType='Event'|'RequestResponse'|'DryRun',
LogType='None'|'Tail',
ClientContext='string',
Payload=b'bytes'|file,
Qualifier='string'
)

print(response)

您的自定义资源的响应似乎是这样的:

{“状态代码”:123,'函数错误':'字符串','日志结果': '字符串',“有效负载”:StreamingBody(),'执行版本': '字符串'}

但您可以通过 boto3 调用来验证它

boto3 文档:https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/lambda.html?highlight=lambda#Lambda.Client.invoke

关于amazon-web-services - CDK CustomResource属性错误: Vendor response doesn't contain key in object,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71680494/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com