OSI 参照モデル | TCP/IP モデル | TCP/IP プロトコル | 実装 |
---|---|---|---|
アプリケーション層 | アプリケーション層 | HTTP, DNS, DHCP, SSH, MIME, TLS | アプリケーション プログラム |
プレゼンテーション層 | |||
セッション層 | |||
トランスポート層 | トランスポート層 | TCP, UDP | OS |
ネットワーク層 | インターネット層 | IP, ICMP, ARP, IPSec | |
データリンク層 | ネットワーク インターフェイス層 | イーサネット (有線) IEEE 802.11(Wi-Fi/無線) | デバイスドライバー Network Interface |
物理層 |
具体的には、以下のようなデータの表現形式があります。(他にも大量にあります)
- JSON
- gzip
- UTF-8
- HTML
- CSV
- gif
- jpeg
TCP/IP プロトコルでは、MIME がプレゼンテーション層に相当します。
HTTP プロトコルと MIME タイプ
MIME はタイプ/サブタイプで構成されます。
HTTP プロトコルでは、MIME タイプを以下のように Content-Type で指定可能です。
(<引数=値> はオプション)
Content-Type タイプ/サブタイプ; <引数=値>
例:Content-Type: application/json; charset=utf-8
MIME のタイプとサブタイプ
よく利用する MIME タイプとサブタイプの一覧は、以下のとおりです。
タイプ | サブタイプ |
---|---|
application | json |
gzip | |
text | plain |
css | |
html | |
javascript | |
csv | |
image | gif |
jpeg | |
png | |
webp | |
multipart | form-data |
curl で MIME タイプを指定
curl を利用して、MIME タイプを指定してリクエストを送る例を示します。
curl example.com -XPOST -H "Content-Type: application/json" -d '{"hoge" : "tech"}'
関連記事
OSI 参照モデルの L6/プレゼンテーション層に関する説明は以上となります。
OSI 参照モデル | TCP/IP モデル | TCP/IP プロトコル | 実装 |
---|---|---|---|
アプリケーション層 | アプリケーション層 | HTTP, DNS, DHCP, SSH, MIME, TLS | アプリケーション プログラム |
プレゼンテーション層 | |||
セッション層 | |||
トランスポート層 | トランスポート層 | TCP, UDP | OS |
ネットワーク層 | インターネット層 | IP, ICMP, ARP, IPSec | |
データリンク層 | ネットワーク インターフェイス層 | イーサネット (有線) IEEE 802.11(Wi-Fi/無線) | デバイスドライバー Network Interface |
物理層 |
参考記事
MIME タイプ(IANA メディア種別) - HTTP | MDN
メディア種別 (別名 Multipurpose Internet Mail Extensions または MIME タイプ) は、文書、ファイル、またはバイト列の性質や形式を示します。 MIME タイプは IETF の RFC 6838 で定義され、標準化されています。
Multipurpose Internet Mail Extensions - Wikipedia
3 Minutes Networking