Это мой код Python Flask, который будет загружать файл в хранилище, совместимое с S3.(Это может быть хранилище AWS S3 или Digital Ocean Space)
# This is Python Flask code, which will be hosted in Digital Ocean Droplet
@app.route('/', methods=['POST'])
def upload_file():
file = request.files['file']
# Is it possible to eliminate this step???
file.save('/tmp/file.ext')
session = boto3.session.Session()
client = session.client('s3',
region_name='nyc3',
endpoint_url='https://nyc3.digitaloceanspaces.com',
aws_access_key_id='ACCESS_KEY',
aws_secret_access_key='SECRET_KEY'
)
client.upload_file('/tmp/file.ext', # Path to local file
'my-space', # Name of Space
'file.ext') # Name for remote file
Мой вопрос заключается в том, чтобы сократить объем операций ввода-вывода, возможно ли передать объект file
непосредственно клиенту boto3
без необходимости сохранения файла на локальном сервере с помощью file.save
?