Python AWS Lambda API将JSON转换为字符串

Python AWS Lambda API将JSON转换为字符串,python,aws-lambda,aws-api-gateway,Python,Aws Lambda,Aws Api Gateway,让我的AWS API返回实际的JSON是一个挑战。所有内容都变成一个字符串,原始内容中的所有双引号都被转义 我以前有一个带有AWSAPI的NodeJS后端,运行良好。现在,我还没有接触API,而是将后端更改为Python,并且出现了这个节点应用程序不存在的问题 在Python中,我有一个数据框架,可以转换为JSON: myJSON = myDataFrame.to_json(orient = 'records', force_ascii=True) 当我打印JSON并在Cloudwatch

让我的AWS API返回实际的JSON是一个挑战。所有内容都变成一个字符串,原始内容中的所有双引号都被转义

我以前有一个带有AWSAPI的NodeJS后端,运行良好。现在,我还没有接触API,而是将后端更改为Python,并且出现了这个节点应用程序不存在的问题

在Python中,我有一个数据框架,可以转换为JSON:

myJSON = myDataFrame.to_json(orient = 'records', force_ascii=True)  
当我打印JSON并在Cloudwatch中检查它时,一切看起来都正常:

[ { "id": "blah blah"  } ]    
但是,当我通过API返回结果JSON时,它被完全封装在双引号中,这使得它只是一个字符串:

"[{\"id\":\"blah blah\"}]"

我觉得自己很笨,但我不明白问题是否出在API本身上,是否应该用一些体映射来解决这个问题?或者这是关于Pandas是如何格式化JSON的——为什么我在与完全相同的API集成时没有遇到nodeJS应用程序的问题

可以直接调用lambda函数吗?使用控制台测试选项或使用CLI。毕竟API问题在于,主体映射模板不能像这样工作
{“myoutput”:$input.path('$')}
。我仍然不知道为什么我必须为Python版本更改它,或者可能正确的问题是为什么节点版本没有它就可以工作。根据我到目前为止的经验,api网关中pandas的默认行为是,数据帧必须通过
被“修改”为_json
,但也必须通过
json.dumps()传递
。我不明白为什么,虽然这似乎是双重编码的json,但只有数据帧。所以如果有人能解释一下,我会很高兴的。