import { Injectable } from '@nestjs/common';
import aws from 'aws-sdk';
import { UploadTaskFilesDto } from './dto/uploadTaskFiles.dto';
@Injectable()
export class FileUploadService {
async uploadTaskFile(uploadTaskFilesDto: UploadTaskFilesDto) {
const s3 = new aws.S3({
region: 'eu-central-1',
accessKeyId: process.env.AWS_ACCESS_KEY,
secretAccessKey: process.env.AWS_SECRET,
signatureVersion: 'v4',
});
const uploadUrls: string[] = [];
for (let i = 0; i < uploadTaskFilesDto.files.length; i++) {
const file = uploadTaskFilesDto.files[i];
const params = {
Bucket: 'bucket',
Key: `${file.name}`,
Expires: 60,
};
await s3.getSignedUrlPromise('putObject', params).then((url) => {
uploadUrls.push(url);
});
}
return uploadUrls;
}
}
Приветствую, имеется вот такой код(приведен выше). До этого работал, но в один момент просто перестал, при этом в коде ничего не изменялось. Начал выбивать ошибку на этапе инициализации S3
TypeError: Cannot read properties of undefined (reading 'S3')
В чем может быть причина этой ошибки? Пакеты переустанавливал, опять же, все до этого работало корректно