JSON 轉 XML

本地處理
app.xml.view

也可透過 #data={"name":"Ada"}#url=... 灌入資料,讀完即從位址列清除。

JSON 與 XML 互轉。對接仍返回 XML 的老介面,或要把 JSON 配進只認 XML 的系統時,可以在本地先轉一版看結構。根元素名可改,預設是 rootJSON 與 XML 互轉。對接仍返回 XML 的老介面,或要把 JSON 配進只認 XML 的系統時,可以在本地先轉一版看結構。根元素名可改,預設是

雙向

JSON → XML 或 XML → JSON。適合看欄位怎麼對映成標籤,而不是一次性上生產。

轉換後請用目標系統的校驗器再過一遍。

結構近似

物件對應元素巢狀,陣列通常變成重複標籤。這是常見約定,不一定等於對方 schema 的寫法。

屬性與子元素的取捨因系統而異,需要抽查。

屬性與文字

XML 的屬性和純文字節點在 JSON 裡的表示方式可能和原系統不完全一致,轉換後請抽查。

帶名稱空間的 SOAP 文件很難完美自動轉換。

示例

JSON
{
  "note": {
    "to": "Ada",
    "body": "hello"
  }
}
XML(示意)
<note>
  <to>Ada</to>
  <body>hello</body>
</note>
名稱空間還在嗎?

複雜 SOAP / 帶 xmlns 的文件請人工核對,自動轉換很難完美保留全部名稱空間細節。

和 YAML 怎麼選?

現代配置多用 YAML;企業匯流排、部分支付/政務介面仍是 XML。

根元素名有什麼用?

JSON 沒有單一「根標籤」概念。轉 XML 時用該名稱包住整份文件。

需要點執行轉換嗎?

需要。改根元素名之後請再轉換一次。

推薦工作流

  1. 貼上 JSON(或按頁面能力貼上 XML),設定根元素名。
  2. 點「執行轉換」,預覽標籤結構。
  3. 複製或下載,在目標系統做一次解析試驗。
  4. 名稱空間、屬性順序有要求時,用專業 XML 工具收尾。

本頁解決「先看結構」的問題。強約束的 XSD / SOAP 不要只依賴自動轉換。