ホームページ > バックエンド開発 > Golang > Go FileServer が間違った Content-Type MIME タイプを返すのはなぜですか?

Go FileServer が間違った Content-Type MIME タイプを返すのはなぜですか?

Patricia Arquette
リリース: 2024-11-27 12:53:10
オリジナル
894 人が閲覧しました

Why Does My Go FileServer Return the Wrong Content-Type MIME Type?

「Content-Type」MIME タイプが正しくない FileServer 応答

概要
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))
ログイン後にコピー

説明
末尾のスラッシュは、パターンがルート化されたサブツリーを表すことを示します。固定パスよりも。これは、ファイルサーバーが「/media/」サブツリー内の任意のパスに対するリクエストを処理することを意味します。

検証
修正が機能することを確認するには、mp3 ファイルへのアクセスを試みます。再度ファイルします。これで、正しい「Content-Type」MIME タイプ「audio/mpeg」を含む応答が返されるはずです。

以上がGo FileServer が間違った Content-Type MIME タイプを返すのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート