application/octet-stream — 汎用バイナリフォールバック
実際のファイルタイプが不明な場合や強制ダウンロードを意図する場合に使用されるデフォルトのバイナリMIMEタイプ、application/octet-streamを理解します。
Common Types
詳細な説明
application/octet-streamとは?
application/octet-streamは汎用バイナリMIMEタイプです。ペイロードが特定の解釈を持たない任意のバイト列であることを示します。サーバーは主に2つのシナリオでこれを使用します:
- 不明なファイルタイプ — サーバーがファイル拡張子やマジックバイトから実際のMIMEタイプを判定できない場合
- 強制ダウンロード — ブラウザにファイルをインライン表示ではなくダウンロードさせたい場合
ダウンロード用HTTPヘッダー
Content-Type: application/octet-stream
Content-Disposition: attachment; filename="report.pdf"
セキュリティ上の考慮事項
ブラウザはMIMEスニッフィングを行います。スニッフィングを防ぐために以下のヘッダーを追加します:
X-Content-Type-Options: nosniff
特定のタイプを使うべき場合
| octet-streamの代わりに | 使用するタイプ |
|---|---|
| PDFファイル | application/pdf |
| ZIPアーカイブ | application/zip |
| 実行ファイル | application/x-msdownload |
| ディスクイメージ | application/x-iso9660-image |
ユースケース
ファイルタイプが本当に不明な場合、または実際のコンテンツタイプに関係なくファイルのダウンロードを強制する必要がある場合に、最後の手段としてapplication/octet-streamを使用します。