在 Django 中上传 JSON 文件而不保存

问题描述

我想上传、处理和丢弃 JSON 文件而不将其保存在数据库中。

views.py

parser_classes(['FileUploadParser'])
@api_view(['POST'])
def upload_file(request):
    file = request.FILES.get('file')
    # process the file
    return JsonResponse('status':'successful')

urls.py

urlpatterns = [
    path('api/upload_file/',views.upload_file),]

我将标题设置为 Content-Type: multipart/form-data

然后显示错误 "Multipart form parse error - Invalid boundary in multipart: None"

在 DRF 中上传 JSON 文件的正确方法是什么?

Python 版本:3.6.9
Django 版本:3.2.3

解决方法

经过反复试验,我找到了答案。在 JSON 文件上传的情况下,标题部分基本上应该是 application/json。文件的数据可以通过request.data访问。
如果是 JSON 文件,request.FILES 将为空。