Ошибка CORS появляется при одновременной загрузке нескольких файлов в ведро S3 с помощью boto3

У меня вопрос о S3 upload, я использую библиотеку boto3 в python для подключения к S3.

def get_client():
return boto3.client('s3', aws_access_key_id = 'AWS_ACCESS_KEY',
        aws_secret_access_key = 'AWS_SECRET_KEY')

Моя множественная загрузка файла ниже

for item in img_files:
            file_type = ''
            uuid_key = uuid.uuid4()
            fs = FileSystemStorage()
            filename = fs.save(f'{S3_TEMP_FOLDER}{uuid_key}-{item.name}', item)
            file_o_name, file_o_ext = os.path.splitext(filename)
            if file_o_ext.lower() in ['.jpg', '.png', '.jpeg']:
                file_type = 'image'
            else:
                file_type = 'video'

            uploaded_file_path = fs.path(filename)
            
            try:
                s3_client.upload_file(uploaded_file_path, bucket_name, f'{folder_key}/{uuid_key}-{item.name}', ExtraArgs={'ACL': 'public-read'})
                uploaded_data = {
                    "file_name": item.name,
                    "file_key": f'{folder_key}/{uuid_key}-{item.name}',
                    "bucket_name": bucket_name,
                    "folder_id": get_folder_id.id,
                    "created_by": request.user.username,
                    "updated_by": request.user.username,
                    "bucket_id": bucket.id,
                    "file_type": file_type
                }
                S3FileManagement.objects.create(**uploaded_data)
            except Exception as e:
                logger.error({'message': str(e)})
                logger.error({'message': S3_FOLDER_MESSAGE['S3_FILE_UPLOAD_FAILED']})
                return Response({'message': S3_FOLDER_MESSAGE['S3_FILE_UPLOAD_FAILED']}, status=status.HTTP_400_BAD_REQUEST)

Когда я загружаю около 5-10 файлов за раз, процесс загрузки проходит без проблем, но когда я загружаю > 30 файлов, некоторые файлы будут иметь 502 - CORS ошибки.

В настройках python мне разрешили CORS

CORS_ORIGIN_ALLOW_ALL = True
CORS_ALLOWED_ORIGINS = [
    '..{url}..vercel.app',
]
CSRF_TRUSTED_ORIGINS = [
    '..{url}..vercel.app',
]

This is the picture I got error.

Кроме того, в качестве бэкенда python я использую aapanel. Нужны ли еще какие-либо дополнительные настройки?

Спасибо.

Вернуться на верх