2011-11-08 6 views
0

URLからファイルをダウンロードするスクリプトを作成しています。私が抱えている問題は、URLがfile.jpgのような静的ファイルを指すだけでなく、ファイルを返すサーブレットを指す傾向があることです。nodejsイメージヘッダーを読み取る

URLごとにファイルをダウンロードし、一般名でファイルをダウンロードしてから、ヘッダーを読み取り、適切な拡張子を付けて名前を変更します。 (もっと良い方法がない限り)

どうすればいいですか?

私はmime-magicを使ってみましたが、extension-lessファイルがディレクトリであることがわかりました。

+2

実際にはmime-magicを使用して動作するはずですが、正しいパスでパスがディレクトリを指していないことを確認してください。それ以外の場合は、コマンドラインツール 'file --mime/path/to/file'を使用することができます。 – sled

+0

ありがとう、私は馬鹿です。私が使ったwgetコマンドでは、ディレクトリが作成され、そのディレクトリの中にファイルが置かれました。/ – Stephen

+0

あなたの回答を答えとして入れて問題を閉じることができます – Stephen

答えて

2

mime-magicを使用するとうまくいくはずです。パスが正しく、パスがディレクトリを指していないことを確かめていますか?

そうでなければあなたはここでコマンドラインツールfile --mime /path/to/file

を使用することができますがmime-magicを使用してファイルの拡張子を検出する方法である:

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 
    } 
}); 

:地域社会の下の答えとして追加されましたそりさんのコメントwiki。

関連する問題