소개
FileServer는 정적 파일을 제공하기 위한 강력한 Go 패키지입니다. 그러나 응답이 "audio/mpeg" 대신 "text/html"과 같은 잘못된 "Content-Type" MIME 유형을 반환하는 문제가 발생할 수 있습니다. 특정 MIME 유형이 필요한 특정 파일 유형을 제공하는 경우 이는 문제가 될 수 있습니다.
답변
이 문제를 해결하기 위해 MIME 유형을 재정의할 필요는 없습니다. 대신 문제는 FileServer가 구성되는 방식에 있습니다. 특히, 요청을 처리하는 데 사용되는 패턴이 올바르지 않을 수 있습니다.
해결책
해결책은 요청을 처리하는 데 사용되는 패턴에 후행 슬래시를 추가하는 것입니다. 예를 들어 다음 대신 다음을 사용해야 합니다.
http.Handle("/media", http.StripPrefix("/media", fs))
http.Handle("/media/", http.StripPrefix("/media/", fs))
후행 슬래시는 패턴이 루트 하위 트리를 나타냄을 나타냅니다. 고정된 경로보다 이는 FileServer가 "/media/" 하위 트리 내의 모든 경로에 대한 요청을 처리한다는 것을 의미합니다.
검증
수정 사항이 작동하는지 확인하려면 mp3에 액세스해 보세요. 다시 파일을 작성하세요. 이제 올바른 "Content-Type" MIME 유형인 "audio/mpeg"로 응답을 받게 됩니다.
위 내용은 내 Go FileServer가 잘못된 콘텐츠 유형 MIME 유형을 반환하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!