JSON¶
JSONとは¶
JSON(JavaScript Object Notation)はデータを保存・送信するためのフォーマットである。
現在のWebシステムでは最も利用されているデータ形式の一つである。
基本形¶
{
"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の理解が必須となる。