我有一个猎鹰服务器,我试图移植到django。其中一个猎鹰端点处理包含用content_type = 'application/octet-stream'
发送的PNG文件的请求。它将数据写入保持正确PNG结构的文件。
猎鹰代码这样做:
form = cgi.FieldStorage(fp=req.stream, environ=req.env)
,然后像这样写PNG:
fd.write(form[key].file.read())
我不知道如何在django中做同样的事情。当我的视图被称为request.POST[key]
中的数据已经被解码为unicode文本,它不再是有效的png数据。
我如何在django中做到这一点?我应该/可以使用cgi.FieldStorage
吗?我得到的请求(类型为django.core.handlers.wsgi.WSGIRequest
)没有流方法。我相信有一些方法可以做到这一点,但我没有想到任何谷歌。
我通过更改客户端来设置multipart的每个部分的文件和文件名字段来解决这个问题,然后我可以通过请求进行迭代。文件,并成功将文件写入PNG格式。