NPM酷库:file-type,检测文件类型

NPM酷库,每天两分钟,了解一个流行NPM库。

通常,我们的程序通过文件后缀名检测类型,这是最直接简洁的方式。但是,在一些情况下,直接通过后缀名检测文件类型,不太合适或行不通,比如:

这些问题,在脉冲云的代码仓库和文件管理服务的开发中经常遇到,在脉冲云的开发中,我们使用file-type来判断文件类型。

file-type 原理

file-type 可以直接检测一个Buffer数据流,得到这个Buffer数据的内容文件)类型。

file-type 的原理是检测文件/数据的Magic Number。通常情况下,一些知名的文件类型,在其文件开头的几个字节用来标志其文件类型,这几个字节就叫做 Magic Number。比如,PDF文件开头的几个字节是 %PDF(hex: 25 50 44 46)。

file-type 现在已经支持文件类型列表:

jpg png gif webp flif cr2 tif bmp jxr psd zip tar rar gz bz2 7z dmg mp4 m4v mid mkv webm mov avi wmv mpg mp3 m4a ogg opus flac wav amr pdf epub mobi exe swf rtf woff woff2 eot ttf otf ico flv ps xz sqlite nes crx xpi cab deb ar rpm Z lz msi mxf mts wasm blend bpg docx pptx xlsx 3gp jp2 jpm jpx mj2 aif odt ods odp xml

参考资料

https://github.com/sindresorh...

https://en.wikipedia.org/wiki...

相关文章

这篇文章主要介绍“基于nodejs的ssh2怎么实现自动化部署”的...
本文小编为大家详细介绍“nodejs怎么实现目录不存在自动创建...
这篇“如何把nodejs数据传到前端”文章的知识点大部分人都不...
本文小编为大家详细介绍“nodejs如何实现定时删除文件”,内...
这篇文章主要讲解了“nodejs安装模块卡住不动怎么解决”,文...
今天小编给大家分享一下如何检测nodejs有没有安装成功的相关...