2013-04-05 126 views
3

我需要有能力上传文件在服务器上,但上传之前我想验证此文件是否这个文件是和图像或脚本名为image.jpeg。 对于这个我使用了一个名为python-magicDjango文件上传

import magic 

attachment = request.FILES['file'].read() 
m = magic.open(magic.MAGIC_MIME_TYPE) 
m.load() 
ft = m.buffer(attachment) 
m.close() 

它为我工作的罚款库。但是我应该阅读整个文件吗?

attachment = request.FILES['file'].read() 

我认为这是一个坏主意,所以我的问题是多少文件权重头?所以比我只能读取几个字节并验证MIME类型的文件。

回答

1

您可以首先使用mimetype模块来猜测mimetype,建议使用here。如果您确信猜测,请将文件上传到您的网络服务器。如果您以后要访问该文件,则可以使用您提供的源代码进行整个检查,因为无论如何您都必须阅读该文件。