我有一个允许用户上传图片的网站。为了检查用户上传的文件的MIME类型,我使用了下面这个脚本,它使用了python-magic库。
import magic
mime = magic.Magic(mime=True)
if mime.from_file(request.FILES['media-pic']) not in ['image/jpeg', 'image/pjpeg', 'image/png', 'image/gif']:
# don't allow the file to be uploaded
然而,当我尝试上传文件时,出现了错误coercing to Unicode: need string or buffer, TemporaryUploadedFile found
。我并不认为这会起作用,但我尝试了request.FILES ['media-pic'] .name
,并得到了一个File does not exist
的错误。
在文件保存到服务器之前,我如何检查文件的MIME类型?