来自Lambda函数的API网关的502内部服务器错误响应 [英] 502 internal server error response from API gateway from lambda function

查看:158
本文介绍了来自Lambda函数的API网关的502内部服务器错误响应的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

这是我的lambda函数: 我显然已经暂时取消了配置

this is my lambda function: I've obviously blanked out the config for now

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,这只是该数据的一小段

when I test my lambda it's getting the json back in the correct form, this is just a snippet of that data

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

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

however, whenever I invoke API gateway to trigger the lambda and test it, I get a 502. on the API page it just says

{
  "message": "Internal server error"
}

我为什么要得到这个?

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

I've done some googling and most answers say you have to return a statusCode. Clearly I am doing that and it's still broken

有什么想法吗?

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

perhaps im invoking api gateway wrong?

推荐答案

弄清楚了.我没有为其设置 facepalm 的权限.我正在使用ANY请求.但是一旦我收到请求,它就会起作用.

Figured it out. I hadn't set permissions for it facepalm. I was using the ANY request. but once I did a get request it worked.

这篇关于来自Lambda函数的API网关的502内部服务器错误响应的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆