javascript - Node.js lambda 函数重复进行 http 调用

标签 javascript node.js aws-lambda

const https = require('https')

exports.handler = async(event) => {

    return new Promise((resolve, reject) => {

        const parsedEvent = event

        const data = JSON.stringify(parsedEvent.data)

        const options = {
            method: 'POST',
            headers: {
                'Content-Type': 'application/json'
            }
        };

        const endpoint = process.env.API_URL + '/' + parsedEvent.service

        const req = https.request(endpoint, options, (res) => {
            console.log('statusCode:', res.statusCode);
            console.log('headers:', res.headers);

            res.on('finish', () => {
                return resolve({
                    statusCode: res.statusCode
                })
            })
        });

        req.on('error', (e) => {
            return reject(e)
        });

        req.write(data)
        req.end()
    })
};

这是我的 lambda 函数,当我使用以下数据测试它时:

{
  "service": "transcription/check",
  "data": {
    "ConversationId": 1
  }
}

它按预期进行 HTTP 调用,但它会重复进行 HTTP 调用,直到超时。不知何故,lambda 函数不知道结束。我做错了什么?

最佳答案

结果我需要处理data事件。

添加:

res.on('data', () => {return})

有帮助

关于javascript - Node.js lambda 函数重复进行 http 调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57398792/

相关文章:

python - “chalice deploy”调用以“Unknown parameter in input: ”结尾

node.js - 如何在 Node 中访问 Lambda 中的/tmp 文件夹?

javascript - Node.js 中的本地文件出现 404 错误

node.js - ffmpeg nodejs lambda裁剪问题

JavaScript 检查网站 URL 是否可访问

javascript - 我不明白对象的可写和可配置属性

javascript - 使用 javascript promise 链以获得真正异步函数序列的最佳方法?

javascript - express.js 路由中的参数类型

javascript - 为动态数量的键/值对创建 Mongoose 模式的正确方法

javascript - 如何在解析服务器上使用 kue 安排作业?