Snowflake cloud data platform 外部函数调用返回顶级JSON对象必须包含;“数据”;JSON数组元素错误

Snowflake cloud data platform 外部函数调用返回顶级JSON对象必须包含;“数据”;JSON数组元素错误,snowflake-cloud-data-platform,Snowflake Cloud Data Platform,我有一个利用外部功能的用例 遵循中的步骤 在上面的GitHub repo中创建了相同的函数,我能够独立地从AWS上的API测试lambda函数,但是当我从Snowflake调用外部函数时,它返回此错误 分析请求批次id为1234的外部函数EXT_FUNC_测试的JSON响应时出错。错误:顶级JSON对象必须包含“数据”JSON数组元素 更新:以下是lambda中的测试有效负载输入和响应 输入 {“body”:“{\”data\:[[0,1],[1,5],[2,a string\”]} 回应 {“

我有一个利用外部功能的用例

遵循中的步骤

在上面的GitHub repo中创建了相同的函数,我能够独立地从AWS上的API测试lambda函数,但是当我从Snowflake调用外部函数时,它返回此错误

分析请求批次id为1234的外部函数EXT_FUNC_测试的JSON响应时出错。错误:顶级JSON对象必须包含“数据”JSON数组元素

更新:以下是lambda中的测试有效负载输入和响应

输入

{“body”:“{\”data\:[[0,1],[1,5],[2,a string\”]}

回应

{“statusCode”:200,“body”:“{“data\”:[[0,4],[1,8],[2,\“处理此行时出错…\”]}

雪花调用
选择Ext\u Func\u test(3)
在CloudWatch中生成输入作为

{“数据”:[[0,3]}


如何将
正文
合并到输入中?

Snowflake希望响应采用特定格式。

比如:

{
    "data":
        [
            [ 0, 1995 ],
            [ 1, 1974 ],
            [ 2, 1983 ],
            [ 3, 2001 ]
        ]
}

当您从AWS API测试lambda时,响应是否与上面的示例类似?

Snowflake希望响应采用特定的格式。

比如:

{
    "data":
        [
            [ 0, 1995 ],
            [ 1, 1974 ],
            [ 2, 1983 ],
            [ 3, 2001 ]
        ]
}

当您从AWS API测试lambda时,响应是否与上面的示例类似?

是,测试有效负载。用更多信息更新了这个问题。我认为您没有使用lambda代理集成。这就是为什么在请求中看不到body元素的原因。你能检查一下Lambda代理集成是否在API中被检查过吗?你是对的,那是缺少的部分,谢谢。是的,测试负载。用更多信息更新了这个问题。我认为您没有使用lambda代理集成。这就是为什么在请求中看不到body元素的原因。您能检查一下API中是否检查了Lambda代理集成吗?您是对的,这是缺少的部分,谢谢。