我使用以下代码从邮递员那里获取单个文件/ zip。
在请求中,我要求文件的原始名称,并且可以检查文件originalname
是否包含.zip
,是否有更好的方法检查它是单个文件还是zip?
update function (req, res) {
if (req.file) {
答案 0 :(得分:2)
过去,我不得不这样做,而我发现的最干净的方法是从请求中检查文件的mimetype
:
if(req.file.mimetype === 'application/zip')
奖金,不需要外在补习。
答案 1 :(得分:0)
您只需使用 file-type
module 即可做到这一点。
检测Buffer / Uint8Array的文件类型
文件类型(输入)
通过以下方式返回
Object
:
ext
-受支持的文件类型之一
mime
-MIME类型
或null
(如果不匹配)。
这是检查文件类型的方法:
const readChunk = require('read-chunk');
const fileType = require('file-type');
const buffer = readChunk.sync('myFile.zip', 0, 4100);
if (fileType(buffer).ext == "zip")) {
console.log("Zip file loaded");
}