メインコンテンツまでスキップ

6. Converting Data between CBOR and JSON (CBOR と JSON 間のデータ変換)

6.1. Converting from CBOR to JSON (CBOR から JSON への変換)

CBOR から JSON への変換は、以下の制限を考慮する必要があります:

JSON でサポートされない CBOR 機能:

  • バイト文字列 (メジャータイプ 2)
  • タグ (メジャータイプ 6)
  • 簡易値 (true, false, null 以外)

変換戦略:

  • バイト文字列を Base64 でエンコードされたテキスト文字列に変換する MAY
  • タグを無視し、タグ付きコンテンツのみを変換する MAY
  • 数値精度の損失を最小限に抑える

6.2. Converting from JSON to CBOR (JSON から CBOR への変換)

JSON から CBOR への変換はより直接的です:

変換マッピング:

  • JSON 数値 → CBOR 整数または浮点数
  • JSON 文字列 → CBOR テキスト文字列
  • JSON 配列 → CBOR 配列
  • JSON オブジェクト → CBOR マップ
  • JSON true/false/null → CBOR 簡易値

考慮事項:

  • 整数として表現可能な数値は、整数として CBOR にエンコードする SHOULD
  • 大きな整数を正確に保持する
  • Unicode 文字列を UTF-8 としてエンコードする