标头和边界包含在上载的文件Django Rest框架中 [英] headers and boundary included in uploaded file django rest framework
本文介绍了标头和边界包含在上载的文件Django Rest框架中的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在使用Django Rest Framework通过ajax将csv文件上传到Django。我已完成所有工作,但请求标头中的数据包含在文件内容中。
I'm uploading a csv file to Django via ajax, using Django Rest Framework. I have everything working, but data from the request headers is included with the file content.
我期望这些标头已从文件内容中删除,因此文件
I was expecting these headers to have been stripped from the file content, so the file would look exactly like the uploaded file.
有什么想法吗?
...
Django视图
class FileUploadView(APIView):
parser_classes = (FileUploadParser, )
def post(self, request, format=None):
file = request.FILES['file']
fs = FileSystemStorage()
fs.save('output.csv', file)
input.csv:
input.csv:
Date,Customer,Team Member,Services
09-25-2018 03:30 PM,Suzy16 Neil16,Suzy,Men's Haircut | Legs
09-25-2018 03:30 PM,Suzy16 Neil16,Suzy,Men's Haircut | Legs
09-25-2018 03:30 PM,Suzy16 Neil16,Suzy,Men's Haircut | Legs
...
output.csv:
output.csv:
------WebKitFormBoundarycaNCidFSnOuN1u0G
Content-Disposition: form-data; name="file"; filename="input.csv"
Content-Type: text/csv
Date,Customer,Team Member,Services
09-25-2018 03:30 PM,Suzy16 Neil16,Suzy,Men's Haircut | Legs
09-25-2018 03:30 PM,Suzy16 Neil16,Suzy,Men's Haircut | Legs
09-25-2018 03:30 PM,Suzy16 Neil16,Suzy,Men's Haircut | Legs
...
------WebKitFormBoundarycaNCidFSnOuN1u0G--
来自HTTP请求的相关标头:
Relevant Headers From HTTP Request:
Content-Disposition: attachment; filename=services.csv
Content-Type: multipart/form-data; boundary=----WebKitFormBoundarycaNCidFSnOuN1u0G
推荐答案
MultiPartParser
是我想要的,因为前端将表单作为多部分表单发送。
The MultiPartParser
was what I was looking for as the front-end was sending up the form as a multipart form.
class FileUploadView(APIView):
parser_classes = (MultiPartParser,)
...
这篇关于标头和边界包含在上载的文件Django Rest框架中的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文