我正在尝试部署一个简单的Slack,它使用@slack/client库从特定的通道删除成员和固定消息。我遇到的问题是函数执行时没有问题,而且它没有问题地移除通道成员,但是我的Lambda函数继续返回:
HTTP/1.1 502 Bad Gateway
...
X-Cache: Error from cloudfront
...
{
"message": "Internal server error"
}作为反应体。当我使用sls logs -f api检查日志时,我也没有看到任何错误。我看到我的函数的console.log成功地执行。
我的serverless.yml如下:
provider:
name: aws
runtime: nodejs10.x
profile: serverless
functions:
api:
handler: handler.api
timeout: 30
events:
- http:
method: POST
path: clean我的api代码,我已经删除了不必要的函数代码,因为他们正在做他们的工作,是:
module.exports.api = async (event, context, callback) => {
let channel = JSON.parse(event.body).ctf
let id = await findChannelId(channel)
removeMembersFromChannel(id[0]).then(() => {
removePinsFromChannel(id[0]).then(() => {
callback(null, {
statusCode: 200,
body: JSON.stringify({
message: `Cleaned ${channel} ${id}`,
}, null, 2),
})
})
})
};我尝试过的事情:
callbacksls invoke local在本地测试函数问题
JSON.stringify。使用serverless-framework,如何避免使用Lambda代理集成?发布于 2019-07-15 17:41:30
请通过cloudwatch添加console.log进行详细的日志记录,并使用x射线.cloudfront的一些典型问题:-需要大量时间传播到边缘位置(也许您需要重新创建cdn) -来自lambda@edge的日志位于被调用区域
https://stackoverflow.com/questions/57043556
复制相似问题