コンテンツにスキップ

JSON

JSONとは

JSON(JavaScript Object Notation)はデータを保存・送信するためのフォーマットである。

現在のWebシステムでは最も利用されているデータ形式の一つである。

REST APIWebSocketでも頻繁に利用される。


基本形

{
    "name": "ALEO",
    "status": "READY"
}

構造

JSONは

"キー": 

の組み合わせで構成される。

{
    "temperature": 25,
    "voltage": 12.3
}

文字列

{
    "name": "Aster"
}

数値

{
    "speed": 100
}

真偽値

{
    "enabled": true
}

配列

{
    "errors": [
        "OVERCURRENT",
        "OVERTEMP"
    ]
}

オブジェクト

{
    "motor": {
        "speed": 50,
        "current": 0.8
    }
}

REST API例

サーバー

{
    "status": "READY",
    "temperature": 28.5
}

ブラウザ

fetch("/api/status")
    .then(res => res.json())
    .then(data => {
        console.log(data.status);
    });

WebSocket例

送信

{
    "type": "status",
    "state": "RUN"
}

受信

{
    "type": "temperature",
    "value": 32.1
}

Asterでの利用例

ALEOからACへ

{
    "mode": "AUTO",
    "temperature": 27.3,
    "voltage": 12.1
}

ACからALEOへ

{
    "status": "READY",
    "battery": 87
}

メリット

  • 人間が読める
  • 軽量
  • 多くの言語で利用可能
  • Webとの相性が良い

デメリット

  • コメントが書けない
  • バイナリデータには向かない

Asterでの役割

AsterではREST APIやWebSocketで送受信するデータ形式としてJSONを利用する予定である。

そのため

を学んだ後はJSONの理解が必須となる。