ホームページ  >  記事  >  バックエンド開発  >  質問と回答の形式を念頭に置いた、いくつかのタイトルのオプションを次に示します。 **短く直接的:** * **Go でデフォルトの http.DetectContentType 制限を超えて MIME タイプ検出を拡張するにはどうすればよいですか

質問と回答の形式を念頭に置いた、いくつかのタイトルのオプションを次に示します。 **短く直接的:** * **Go でデフォルトの http.DetectContentType 制限を超えて MIME タイプ検出を拡張するにはどうすればよいですか

Barbara Streisand
Barbara Streisandオリジナル
2024-10-26 06:14:02903ブラウズ

Here are a few title options, keeping in mind the question-answer format:

**Short & Direct:**

* **How can I extend MIME type detection in Go beyond the default http.DetectContentType limitations?**
* **What are the best options for detecting additional

Go での MIME タイプ検出の拡張

Go の net/http パッケージでは、http.DetectContentType([]byte) 関数が次の方法を提供します。指定されたバイト スライスの MIME タイプを決定します。ただし、この関数は限られた数のタイプのみをサポートします。

追加の MIME タイプ、特に docx、doc、xls、xlsx、ppt、pps、odt、ods、および odp ファイルを検出するには、以下に依存する必要があります。ファイルの拡張子ではなく、ファイルの内容を重視します。これは、これらのファイル形式が zip ファイルと同じ署名を共有しているためです。

この問題に対する 1 つの解決策は、コンテンツに基づいて MIME タイプを検出するための特殊なパッケージを使用することです。一般的な 3 つのオプションは次のとおりです:

  • ファイルタイプ

    • 完全に Go で記述
    • 新しい MIME を検出するために拡張可能タイプ
    • 一致する関数をマップに保存するため、一貫性のない走査順序が発生する可能性があります
    • 限られた数の MIME タイプを検出します
  • magicmime

    • libmagic-dev ライブラリに依存します
    • 3 つのオプションの中で最も多くの MIME タイプを検出します
    • 拡張性はより複雑で、 libmagic についての理解
    • Libmagic はスレッドセーフではありません
  • mimetype

    • 完全に Go で書かれています
    • ファイルタイプよりも多くの MIME タイプを検出します
    • スレッドセーフ
    • 拡張性をサポートします

以上が質問と回答の形式を念頭に置いた、いくつかのタイトルのオプションを次に示します。 **短く直接的:** * **Go でデフォルトの http.DetectContentType 制限を超えて MIME タイプ検出を拡張するにはどうすればよいですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。