Node.js获取文件的mime类型

站长
· 阅读数 896
在使用Node进行文件处理时我们经常会需要不同类型的文件进行不同的处理,并且对客户端进行对应的请求头返回,这里推荐两个个插件进行文件类型的快速获取文件类型。
1.mime
可以获取文件的mime-type用于请求头返回
res.writeHead(200, {
'Content-type': mime.getType(`public/a.webp`)// image/webp
});
res.write(chunk);
只需要引入插件,然后使用对应的函数传入文件路径就可以获取mime-type了
功能齐全,可以通过文件或者Buffer流来进行文件类型,并且不仅可以获取mime-type也可以获取文件后缀类型,并且使用Promise返回结果。
根据文件夹名称获取:
import {fileTypeFromFile,fileTypeFromBuffer} from 'file-type';
console.log(await fileTypeFromFile('fileNa.png'));
//=> {ext: 'png', mime: 'image/png'}
使用Buffer
import { fileTypeFromBuffer } from "file-type";
let buffer = ctx.file.buffer; //文件的Buffer
console.log(await fileTypeFromBuffer(buffer));
//=> {ext: 'png', mime: 'image/png'}
并且官网上给出了使用方法,也是通过传递文件路径或者Buffer来获取类型,同时支持Promise