我正在尝试创建一个同时接收表单数据和文件的视图。以下是我的看法:
class TestFileViewSet(APIView):
parser_classes = (MultiPartParser, FormParser,)
def post(self, request, format=None):
print(request.data)
return Response({'received data': request.data})
以下是邮递员请求:
curl -X POST \
http://localhost:80/TestFileViewSet/ \
-H 'cache-control: no-cache' \
-H 'content-type: multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW' \
-H 'postman-token: 41c99615-3bcb-f291-ba3c-7a606850027a' \
-F code=widget \
-F name=Widget \
-F 'description=Widget Description' \
-F file=@test.js
当我打印请求数据时,我得到:
<QueryDict: {'code': ['widget\r\n------WebKitFormBoundaryHQpnv1ZnGY52rZuR\r\nContent-Disposition: form-data; name="name"\r\n\r\nWidget\r\n------WebKitFormBoundaryHQpnv1ZnGY52rZuR\r\nContent-Disposition: form-data; name="description"\r\n\r\nWidget Description\r\n------WebKitFormBoundaryHQpnv1ZnGY52rZuR\r\nContent-Disposition: form-data; name="file"; filename="test.js"\r\nContent-Type: application/javascript\r\n\r\ntesttesttest\n\r\n------WebKitFormBoundaryHQpnv1ZnGY52rZuR--\r\n']}>
为什么我在发送字段时没有将字段作为字典