2011-11-08 3 views
0

URL 목록에서 파일을 다운로드하는 스크립트를 작성하고 있습니다. 내가 겪고있는 문제는 URL이 file.jpg과 같은 정적 파일을 가리 키지 만 파일을 반환하는 서블릿을 가리키는 경향이 있다는 것입니다.nodejs 이미지 헤더 읽기

각 URL에 대한 파일을 다운로드하고 일반 이름으로 저장 한 다음 해당 헤더를 읽고 해당 확장명으로 이름을 바꿉니다. (더 좋은 방법이없는 한)

어떻게 할 수 있습니까?

mime-magic을 사용해 보았습니다.하지만 확장 기능이없는 파일은 디렉토리라고합니다.

+2

실제로 mime-magic을 사용하여 작동해야합니다. 올바른 경로인지, 경로가 디렉토리를 가리키고 있지 않은지 확인하십시오. 그렇지 않으면 커맨드 라인 툴'file --mime/path/to/file'을 사용할 수있다. – sled

+0

고마워, 나는 바보 야. 내가 사용한 wget 명령은 디렉토리를 만들고 그 디렉토리 안에 파일을 넣었습니다 :/ – Stephen

+0

응답을 응답으로 만들어서 문제를 닫을 수 있습니다 – Stephen

답변

2

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

: 추가 썰매의 코멘트를 커뮤니티에서 답변으로

그렇지 않으면 어떻게 mime-magic를 사용하여 파일의 확장자를 검출하는 명령 행 도구 여기 file --mime /path/to/file

를 사용할 수 있습니다 위키.