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

标签 javascript node.js amazon-web-services aws-lambda aws-api-gateway

这是我的 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 并测试它时,我都会收到 502。在 API 页面上它只是显示

{
  "message": "Internal server error"
}

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

我进行了一些谷歌搜索,大多数答案都说您必须返回 statusCode。显然我正在这样做,但它仍然损坏

有什么想法吗?

也许我调用的 api 网关错误?

最佳答案

想通了。我没有为其facepalm设置权限。我正在使用任何请求。但一旦我做了一个 get 请求,它就起作用了。

关于javascript - 来自 lambda 函数的 API 网关的 502 内部服务器错误响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55051452/

相关文章:

javascript - 检查用户是否喜欢页面

node.js - 为什么我不能用 sinon 正确地 stub twilio 库?

amazon-web-services - 我如何知道哪个 AWS 区域从我所在位置的延迟最低?

javascript - 将 Html 表导出到 Excel - 所有浏览器

javascript - jQuery 可拖动位置不变

node.js - 如何阻止 Protractor 下载最新的 chromedriver?

node.js - 加密安全随机数生成器生成相同 uuid 的几率是否足够小,以至于您不需要检查唯一性?

amazon-web-services - 如何在 AWS 上为 DNS 记录设置 DNSSEC

amazon-web-services - 如何删除 aws cloudfront Origin Access Identity

javascript - 将具有值的子对象添加到现有的 javaScript 对象