【发布时间】:2021-08-10 08:53:49
【问题描述】:
我想将文件上传到我的 django 应用程序。
views.py
@api_view(['POST'])
def upload_to_evm(request):
if request.method == 'POST' and request.FILES['file']:
file = request.FILES['file']
filename = FileSystemStorage().save('abcd', file)
return JsonResponse({'Status': 'Successful'})
urls.py
urlpatterns = [
path('api/evm_process/', views.upload_to_evm)
]
目前,我使用Binary File 选项和标头Content-Type: multipart/form-data 发送我的请求,它给出MultiValueDictKeyError 错误,这意味着我的request.FILES 是空的,我不明白为什么。
我的问题是:
- 使用相同的所有标头和 query_params 发出 POST 请求的正确方法是什么?
- 我是否需要解析器(FileUploadParser、MultiPartParser 或 FormParser)来上传、保存或处理上传的文件?
Python 版本:3.6.9
Django 版本:3.2.3
【问题讨论】:
标签: python django post file-upload django-rest-framework