Http nodejs读取图像头

Http nodejs读取图像头,http,node.js,mime-types,fs,Http,Node.js,Mime Types,Fs,我正在编写一个脚本,从列表中的URL下载文件。我遇到的问题是,URL不仅仅指向静态文件,比如file.jpg,它们倾向于指向返回文件的servlet 我要做的是为每个url下载文件并用通用名称保存它,然后读取其标题并用适当的扩展名重命名它。(除非有更好的办法) 我怎么能这么做 我尝试过使用mime magic,但它告诉我无扩展名的文件是目录。使用mime magic应该可以工作。您确定路径正确且未指向目录吗 否则,您可以使用命令行工具file--mime/path/to/file 以下是如何使用

我正在编写一个脚本,从列表中的URL下载文件。我遇到的问题是,URL不仅仅指向静态文件,比如
file.jpg
,它们倾向于指向返回文件的servlet

我要做的是为每个url下载文件并用通用名称保存它,然后读取其标题并用适当的扩展名重命名它。(除非有更好的办法)

我怎么能这么做


我尝试过使用mime magic,但它告诉我无扩展名的文件是目录。

使用
mime magic应该可以工作。您确定路径正确且未指向目录吗

否则,您可以使用命令行工具
file--mime/path/to/file

以下是如何使用以下方法检测文件扩展名:


注意:在community wiki下添加了sled的评论作为答案。

实际上,它应该使用mime magic工作,您确定路径正确并且路径没有指向目录吗?否则,您可以使用命令行工具
file--mime/path/to/file
谢谢,我很笨。我使用的wget命令创建了一个目录并在该目录中放置了一个文件:/n您应该将您的响应作为答案,这样我就可以关闭该问题
mime('/path/to/foo.pdf', function (err, type) {
    if (err) {
        console.error(err.message);
        // ERROR: cannot open `/path/to/foo.pdf' (No such file or directory)
    } else {
        console.log('Detected mime type: %s', type);
        // application/pdf
    }
});