application/json — JSONの標準MIMEタイプ

API、AJAXリクエスト、設定ファイルでJSONデータのContent-Typeとしてapplication/jsonを使用するタイミングと方法を学びます。

Common Types

詳細な説明

application/jsonとは?

application/jsonは、JavaScript Object Notation(JSON)データの公式IANAメディアタイプです。RFC 4627(2006年)で標準化され、後にRFC 8259(2017年)で更新されました。サーバーがJSONを返すとき、またはクライアントがJSONリクエストボディを送信するときは、Content-Typeヘッダーをapplication/jsonに設定する必要があります。

一般的なHTTP使用例

Content-Type: application/json; charset=utf-8

RFC 8259ではすべてのJSONにUTF-8エンコーディングが義務付けられているため、charset=utf-8パラメータは技術的には任意ですが、多くのサーバーが明示的に含めています。

なぜtext/jsonではないのか?

text/jsonは非公式に存在しますが、IANA登録されたタイプではありませんapplication/jsonを使用することで、HTTPクライアント、APIゲートウェイ、コンテントネゴシエーションミドルウェアによる適切な処理が保証されます。

関連タイプ

MIMEタイプ 用途
application/json 標準JSON
application/ld+json JSON-LDリンクトデータ
application/vnd.api+json JSON:API仕様
application/problem+json RFC 7807エラーレスポンス
application/schema+json JSON Schemaドキュメント

コンテントネゴシエーション

REST APIでは一般的にAcceptヘッダーでフォーマットをネゴシエーションします:

Accept: application/json

サーバーがJSONとXMLの両方をサポートしている場合、このヘッダーを設定することでJSONを確実に受信できます。

ユースケース

REST APIの構築や利用、HTTP経由で配信される.jsonファイルの設定保存、フロントエンドアプリケーションからのAJAXリクエスト送信時にapplication/jsonを使用します。Web API通信のデファクトスタンダードです。

試してみる — MIME Type Reference

フルツールを開く