不论文件扩展名(NodeJS),检测文件类型

时间:2020-01-21 15:03:02

标签: javascript node.js multer

使用带有multer的NodeJS,是否可以检测文件的真实文件类型,而不论其扩展名是什么?

方案:您只允许上传某些文件类型(.jpeg.docx)。用户获取文件pictures.rar,将其重命名为pictures.docx,然后继续上传文件。您的服务器仅需要文档和图像文件,因此尝试读取docx会耗费大量精力。

很明显这是用户错误,但是有办法检测到它并且不继续吗?

2 个答案:

答案 0 :(得分:1)

您可以使用一个模块来检测文件的类型,但是如果没有将其放在服务器上,您将无法对其进行检查。因此,上传文件后,您可以测试其类型。

文件类型为https://www.npmjs.com/package/file-type的模块nodj

答案 1 :(得分:0)

您可以使用文件元数据npm包来获取文件元数据并从中提取mime类型 https://www.npmjs.com/package/file-metadata