Я работаю над приложением Django, где пользователь нажимает кнопку, вызывает скрипт python для выполнения работы, а затем загружает файл .zip, созданный указанной работой. Я проверил, что файл создан успешно, и в javascript я использовал предупреждение для печати ответа с сервера. Содержимое файла возвращается, но загрузка файла не появляется в браузере/где-либо на моем компьютере. Вот код, который я использую для загрузки:
if os.path.exists(zip_file_location_server):
with open(zip_file_location_server, 'rb') as zip_file:
response = HttpResponse(FileWrapper(zip_file), content_type='application/zip')
response['Content-Disposition'] = 'attachment; filename="foo.zip"'
return response
Я пытался:
- Удаление FileWrapper (оставив только файловый объект в качестве первого аргумента
HttpResponse
) - Изменение аргумента
filename
наzip_file_location_server
- Изменение аргумента
content_type
наapplication/force-download
Все безрезультатно. Что мне не хватает для загрузки возвращенного ZIP-файла?
$.get()
. Я использую alert() для печати ответа в параметре функцииsuccess
функции$.get()
. - person kneedhelp   schedule 26.06.2019$.get()
игнорирует заголовокContent-Disposition
. - person Daniel Hepper   schedule 26.06.2019$.get()
на$.post()
, но у меня возникла та же проблема. Есть ли у вас какие-либо советы о том, что я мог бы использовать для решения этой проблемы? - person kneedhelp   schedule 26.06.2019