У меня есть файл node.js (т. Е. abc.js
), который выдаст вывод при запуске в редакторе node.js.Я хочу запустить тот же файл в AWS Lambda
. Для этого я создал лямбду и переместил туда abc.js
.Для запуска кажется, что мне нужно реализовать мой abc.js
файл в handler.js (то есть, лямбда-путь означает обратный вызов и т. Д.).
Есть ли способ вызвать abc.js
из handler.js
вместо повторной реализациито же самое в handler.js
?
Проверено в отношении вышеупомянутого варианта использования, но не нашел много в Google.
Обновлено
Мой abc.js файл
var AWS = require('aws-sdk');
// Set the region
AWS.config.update({
region: "ap-south-1"
});
// Create S3 service object
s3 = new AWS.S3();
var params= {};
s3.listBuckets(params, bucketList);
function bucketList(err, data) {
if (err) console.log(err, err.stack); // an error occurred
else
{
console.log(data)
}
}
Мой handler.js в лямбде и его изменение на основе моей интерпретации вашего ответа.
exports.handler = async (event) => {
const abc = require('./abc.js');
// TODO implement
abc.bucketList();
};
Это ошибка, которую я получаю
Response:
{
"errorMessage": "abc.bucketList is not a function",
"errorType": "TypeError",
"stackTrace": [
"exports.handler (/var/task/index.js:5:5)"
]
}
Любая помощь приветствуется.