AWS S3Client выдает ошибку: 'emitWarning' не является функцией
Я пытаюсь создать S3Client с помощью
@aws-sdk/client-s3
пакет, как показано ниже:
const { S3Client } = require('@aws-sdk/client-s3')
const client = new S3Client({ region: 'us-east-1' })
Он отлично работает локально, но когда я загружаю код в функцию MongoDB Realm вместе с зависимостью client-s3, он выдает ошибку:
{"message":"'emitWarning' is not a function","name":"TypeError"}
Что могло вызвать эту ошибку?
1 ответ
Оказывается, это происходило из-за того, что в среде MongoDB Realm Functions нет
emitWarning
функция определена на глобальном
process
переменная, поэтому ошибка продолжала говорить
'emitWarning' is not a function
.
Я обратился по этому поводу в службу поддержки MongoDB, и оказалось, что AWS-SDK v3 просто несовместим с функциями MongoDB Realm.
Вместо этого вы должны использовать AWS-SDK v2. В конце концов я нашел эту статью на форумах MongoDB, в которой объяснялось, что они специально поддерживают v2.737.0 SDK.