Saya memiliki fungsi lambda Serverless , di mana saya ingin menjalankan (memanggil) metode dan melupakannya
Saya melakukannya dengan cara ini
// myFunction1
const params = {
FunctionName: "myLambdaPath-myFunction2",
InvocationType: "Event",
Payload: JSON.stringify(body),
};
console.log('invoking lambda function2'); // Able to log this line
lambda.invoke(params, function(err, data) {
if (err) {
console.error(err, err.stack);
} else {
console.log(data);
}
});
// my function2 handler
myFunction2 = (event) => {
console.log('does not come here') // Not able to log this line
}
Aku telah memperhatikan bahwa sampai dan kecuali saya melakukan Promise
return
di myFunction1
, itu tidak memicu myFunction2
, tapi tidak harus mengatur lambda InvocationType = "Event"
berarti kita ingin ini menjadi api dan lupa dan tidak peduli tentang respon callback?
Apakah saya melewatkan sesuatu di sini?
Setiap bantuan sangat dihargai.
javascript
aws-lambda
serverless
aws-serverless
aws-lambda-edge
Manzur Khan
sumber
sumber
Jawaban:
Anda
myFunction1
harus fungsi async itu sebabnya fungsi kembali sebelummyFunction2
dapat dipanggillambda.invoke()
. Ubah kode menjadi yang berikut ini maka seharusnya berfungsi:sumber