Как я могу получить документ Word из конечной точки Django?

Я заинтересован в создании веб-приложения с Vue frontend и Django backend, которое позволяет пользователю загружать документ word в Django API с объектом конфигурации для форматирования и редактирования документа с помощью python-docx. Сейчас я пытаюсь загрузить файл из конечной точки REST и постоянно сталкиваюсь с этой проблемой.

script.js:32 Error: SyntaxError: Unexpected token P in JSON at position 0

Я использую fetch для выполнения POST-запроса к конечной точке, и я искренне думаю, что ошибка кроется где-то там, если не в моей обработке файловых объектов. В настоящее время в приложении отсутствует обработка исключений, потому что я просто хочу посмотреть, смогу ли я заставить этот основной механизм работать, поэтому прошу прощения за текущее состояние приложения.

script.js api call

methods: {
    run(e) {
      //test data
      const config = {
        pageLimit: 9,
        marginSize: 1,
      };

      const fileInputField = document.getElementById("document");

      const formData = new FormData();
      formData.append("config", JSON.stringify(config, null, 2));
      formData.append("file", fileInputField.files[0]);

      fetch("http://localhost:8000/format/", {
        method: "POST",
        body: formData
      })
      .then(response => response.blob())
      .then(blob => {
        var a = document.createElement("a");
        a.href = window.URL.createObjectURL(blob);
        a.download = "Test.docx";
        document.body.appendChild(a)
        a.click();
      })
      .catch(error => {
        console.error("Error:", error);
      })
    }
  },

views.py format endpoint

def format(request):
  
  config = json.loads(request.POST['config'])
  file = request.FILES['file']

  # TODO perform some document edits here
  document = Document(file)

  response = StreamingHttpResponse(
    streaming_content = FileWrapper(file),
    content_type='application/vnd.openxmlformats-officedocument.wordprocessingml.document'
  )

  response['Content-Disposition'] = 'attachment;filename=Test.docx'
  response["Content-Encoding"] = 'UTF-8'

  return response

В настоящее время я просто пытаюсь успешно загрузить и скачать файл. Если у кого-то есть какие-либо идеи по исправлению ситуации, я был бы очень признателен. Заранее спасибо!

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