【发布时间】:2020-04-22 20:20:13
【问题描述】:
我尝试从一个由 sqs 队列触发的 aws lambda 调用 api 网关。我的 api 网关调用另一个 lambda 函数来获取一些信息。
但是当我从我的 sqs 队列发送消息时,lambda 被正确执行,但我的 api 网关的调用没有被执行。
我的代码如下:
var https = require('https');
const URL = process.env.API_GATEWAY_URL;
exports.handler = async (event, context, callback) => {
console.log("hello");
https.get(URL, function (result) {
console.log('Success, with: ' + result.statusCode);
context.done(null);
}).on('error', function (err) {
console.log('Error, with: ' + err.message);
context.done("Failed");
});
};
以下是我在 cloudwatch 中的日志:
START RequestId:4eeccd03-b7d2-5efc-aedb-8c3a14411101 版本:$LATEST 2020-04-21T13:14:01.524Z 4eeccd03-b7d2-5efc-aedb-8c3a14411101 信息你好 END RequestId: 4eeccd03-b7d2-5efc-aedb-8c3a14411101
但我希望是这样的:
START RequestId:4eeccd03-b7d2-5efc-aedb-8c3a14411101 版本:$LATEST 2020-04-21T13:14:01.524Z 4eeccd03-b7d2-5efc-aedb-8c3a14411101 信息你好 2020-04-21T13:14:01.524Z 4eeccd03-b7d2-5efc-aedb-8c3a14411101 成功,有:200 END RequestId: 4eeccd03-b7d2-5efc-aedb-8c3a14411101
或者:
START RequestId:4eeccd03-b7d2-5efc-aedb-8c3a14411101 版本:$LATEST 2020-04-21T13:14:01.524Z 4eeccd03-b7d2-5efc-aedb-8c3a14411101 信息你好 2020-04-21T13:14:01.524Z 4eeccd03-b7d2-5efc-aedb-8c3a14411101 错误,带有:message_error END RequestId: 4eeccd03-b7d2-5efc-aedb-8c3a14411101
而且我所有的 lambda 都在同一个 VPC 中。
有什么想法吗?
【问题讨论】:
-
看起来您在发出请求时没有使用 URL 常量?
-
我写问题时的小错误
标签: node.js amazon-web-services aws-lambda aws-api-gateway