Итак, я использую объекты formData для отправки конфиденциальной информации в Django с помощью библиотеки ng-file-upload.Я попытался отправить объекты formData, но они отображаются как пустые объекты QueryDict, когда я пытаюсь отправить их в формате formData (который я предполагаю как шифрование объекта).Та же проблема не возникает при использовании службы $ http.Я подозреваю, что проблема может быть из-за загрузки ng-файла с использованием formData в его исходном коде.(В основном, formData создается для formData).Итак, верно ли мое предположение?Что именно происходит?
Сценарий 1 (без использования formData):
parameters.data = {
'status': 'submitting',
'input_file': vm.input_file,
'method_name': vm.methodName,
'method_description': vm.methodDesc,
'project_url': vm.projectUrl,
'publication_url': vm.publicationUrl
};
Этот объект параметров затем передается в службу, где вызывается Upload.upload.После регистрации request.data в Django я правильно получаю вывод в виде QueryDict, который содержит указанные поля
Сценарий 2 (с formData):
var formData = new FormData();
formData.append("status", "submitting");
formData.append("input_file", vm.input_file);
formData.append("method_name", vm.methodName);
formData.append("method_description", vm.methodDesc);
formData.append("project_url", vm.projectUrl);
formData.append("publication_url", vm.publicationUrl);
parameters.data = formData;
Этот параметрОбъект такой же, как и выше, но объект в Django отображается как пустой объект QueryDict вместо того, чтобы содержать все поля, как в первом случае.