JSON 整理与类型生成可运行案例
物流轨迹:将接口响应整理为两空格缩进
格式化 物流轨迹 的合成响应,只改变 JSON 的书写空白,不补字段、不更改布尔值或数组顺序。weightGrams 使用克,不能与千克字段直接按数值比较。
试一试
在完整工具中打开 ↗示例工作台
JSON 整理与类型生成
pretty运行结果
{
"ok": true,
"data": {
"shipments": [
{
"shipmentId": "demo-shipments-1",
"description": "演示包裹甲",
"weightGrams": 500,
"signed": true,
"state": "in_transit",
"tracking": {
"checkpoints": [
"已揽收",
"运输中"
],
"carrier": "demo-A"
}
},
{
"shipmentId": "demo-shipments-2",
"description": "演示包裹乙",
"weightGrams": 1200,
"signed": false,
"state": "delivered",
"tracking": {
"checkpoints": [
"已签收"
],
"carrier": "demo-B"
}
}
],
"summary": {
"total": 2,
"note": null
}
}
}原例已核验,可修改输入后重新运行。
⌘ / Ctrl + Enter 运行01
场景与操作说明
物流标识、重量和轨迹列表分别表达关联、计量和事件顺序。此案例不查询真实物流,轨迹顺序按样本保留。
weightGrams 使用克,不能与千克字段直接按数值比较。
- 核对 物流轨迹 的字段层级,保留 shipmentId 的字符串类型。
- 修改一项输入并运行,观察结果中的值或路径如何变化。
- 载入对照样本,复现下面的变化;恢复原例会替换当前输入。
02
对照样本
对照输入故意添加尾逗号,预期解析报错。格式化工具不自动猜测或修复不合法 JSON。
查看对照输入
{
"ok": true,
"data": {
"shipments": [
{
"shipmentId": "demo-shipments-1",
"description": "演示包裹甲",
"weightGrams": 500,
"signed": true,
"state": "in_transit",
"tracking": {
"checkpoints": [
"已揽收",
"运输中"
],
"carrier": "demo-A"
}
},
{
"shipmentId": "demo-shipments-2",
"description": "演示包裹乙",
"weightGrams": 1200,
"signed": false,
"state": "delivered",
"tracking": {
"checkpoints": [
"已签收"
],
"carrier": "demo-B"
}
}
],
"summary": {
"total": 2,
"note": null
}
}
,}对照样本的实际结果
Expected double-quoted property name in JSON at position 726 (line 38 column 2)