我正在使用 AWS SDK,并使用 Lambda 運(yùn)行此代碼。我注意到,當(dāng)我在異步函數(shù)中使用帶有回調(diào)的上傳函數(shù)時(shí),它不會(huì)執(zhí)行該函數(shù)。const aws = require('aws-sdk');exports.handler = async (event) => { const s3 = new aws.S3(); console.log('START UPLOAD') const params = { Bucket: 'practice-bucket', Key: 'hello.txt', Body: "hello", } s3.upload(params, function(err, data) { console.log(err, data); });};我知道如何進(jìn)行這項(xiàng)工作??梢酝ㄟ^(guò)將函數(shù)更改為非異步函數(shù),或者使用await 并將upload() 的響應(yīng)轉(zhuǎn)換為promise。但我仍然好奇為什么它不執(zhí)行 upload() 函數(shù)?我希望它只是執(zhí)行一個(gè)常規(guī)函數(shù),因?yàn)槲覜](méi)有告訴它等待。
為什么帶有回調(diào)的函數(shù)不在異步函數(shù)內(nèi)執(zhí)行?
www說(shuō)
2023-09-14 17:57:22