来自lambda函数的API网关的502内部服务器错误响应

问题描述 投票:0回答:1

这是我的lambda函数:我现在显然已经删除了配置

exports.handler = (event, context) => {
    var config = {

    };
    firebase.initializeApp(config)

    const gymData = firebase.database().ref("gymData/exercises")
    axios.get('https://------/gymData/exercises.json').then(({data}) => {
      const returnedData = Object.values(data)
      const response = {
        statusCode: '200',
        body: JSON.stringify(returnedData),
        headers: {
          'Content-Type': 'application/json',
        }
      }
      context.succeed(response)
    })
};

当我测试我的lambda时,它会以正确的形式恢复json,这只是该数据的一小部分

{
  "statusCode": "200",
  "body": "[{\"bodyPart\":\"arms\",\"cardio\":false,\

但是,每当我调用API网关来触发lambda并对其进行测试时,我会在API页面上得到一个502.

{
  "message": "Internal server error"
}

我得到这个的原因是什么?

我做了一些谷歌搜索,大多数答案说你必须返回一个statusCode。显然我正在这样做,它仍然被打破

有任何想法吗?

也许即时调用api网关错了?

javascript node.js amazon-web-services aws-lambda aws-api-gateway
1个回答
0
投票

弄清楚了。我没有为它设置facepalm的权限。我正在使用任何请求。但是一旦我做了一个获取请求就行了。

© www.soinside.com 2019 - 2024. All rights reserved.