У меня есть страница клиента, на которой будут перечислены все файлы в контейнере, при выборе файла имя файла вместе с именем контейнера отправляется на сервер. Сервер должен инициировать загрузку файла и отправить файл в ответ на запрос клиента, см. Изображение ниже:
Я пытался с get_blob_to_stream
@app.route("/blobs/testDownload/")
def testDownload():
container_name =request.args.get("containerName")
print(container_name)
local_file_name= request.args.get("fileName")
with BytesIO() as input_blob:
with BytesIO() as output_blob:
# Download as a stream
block_blob_service.get_blob_to_stream(container_name, local_file_name, input_blob)
copyfileobj(input_blob, output_blob)
newFile = str(output_blob.getvalue())
with open("file.txt","a") as f:
f.write(newFile)
f.close()
return send_file('file.txt',attachment_filename='sample.txt',as_attachment=True,mimetype='text/plain')
Но загружаемый файл находится в формате только текстового файла, я хочу скачать файл независимо от его формата. и я знаю, что это неправильный способ загрузки файла через Web API.
Пожалуйста, предложите мне способ сделать это