@polger

Почему работа с файлами в представлении Django вызывает перезагрузку страницы React?

На бэкенде использую Django + DRF. Сервер запускаю по команде python3 manage.py runserver
Ubuntu 20.04.1 LTS
На фронте React 17.0.1
Отправляю на сервер POST запрос с помощью axios. На сервере во вьюхе следующий код, самый простой:
fd = open(pathFile, 'xb')
fd.close()
return Response(anyData)

Замечу, что изначально в директории файла нет. При выполнении кода он создаётся пустой как и положено. Но именно в момент отработки функции open происходит перезагрузка страницы в браузере как будто нажали F5.

Второе моё наблюдение.
Если использовать:
fd = open(pathFile, 'wb')
fd.write(binaryData)
fd.close()
return Response(anyData)

Если файла в директории нет, то код отрабатывается как надо, файл создаётся с содержимым и страница не перезагружается. Но если файл уже существует, то происходит перезагрузка страницы но при этом содержимое файла перезаписывается. Иными словами вьюха отрабатывается полностью.
Никаких исключений и ошибок нет.
Также пробовал данные манипуляции через os.open. Поведение аналогичное.
Не могу понять почему так происходит. Может сервер в момент работы с файлами отправляет какие-то заголовки на фронт по которым страница перезагружается? Но как тогда отследить их в браузере если страница перезагружается. Как диагностировать проблему? Или есть готовое решение?
  • Вопрос задан
  • 114 просмотров
Пригласить эксперта
Ответы на вопрос 1
@bacon
А при чем тут сервер? Разбирайся с логикой работы React.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы