我使用django驗證器和python-magic來檢查上傳文件的MIME類型並只接受pdf,zip和rar文件。用django表格檢查文件類型:'application/octet-stream'問題
接受的mime類型是: '應用/ PDF', '應用程序/壓縮', '多部分/ X-ZIP', '應用程序/ x-ZIP壓縮的', '應用程序/ x壓縮', '應用/ RAR', '應用程序/ x-RAR' '應用程序/ x-RAR壓縮的', '壓縮/ RAR',
的問題是,有時PDF文件似乎有「應用程序/八位字節流'爲啞劇式。 'application/octet-stream'表示通用的二進制文件,所以我不能簡單地將該MIME類型添加到接受文件列表中,因爲在這種情況下,其他文件(如EXCEL文件)也會被接受,而且我不希望這種事情發生。
在這種情況下我該怎麼辦?
在此先感謝。
我不依賴於所提供的MIME類型。 我已經閱讀了前幾個字節來發現它,用python-magic: mime = magic.from_buffer(value.read(1024),mime = True) 但是這種方法有時會給出「application/octet-stream」 – sabrina 2015-02-12 10:12:53
去第二個選項。 – 2015-02-12 10:14:16