【问题标题】:What is wrong with this JSON这个 JSON 有什么问题
【发布时间】:2018-08-24 10:46:15
【问题描述】:

我必须将此 JSON 格式作为 post 请求发送到 api。但是当在 JSONLint 上在线检查时,它说它是错误的,错误。请指导创建正确。下面是 JSON 格式:

{
"departure_time" = "2017-07-28T17:39:43.611Z";
steps = ({
    "encoded_polyline" = "ytfzDqzksM_AgB";
    "road_name" = "ytfzDqzksM_AgB";
}, {
    "encoded_polyline" = "yvfzDy}ksMPMf@a@";
    "road_name" = "yvfzDy}ksMPMf@a@";
}, {
    "encoded_polyline" = "_ufzDi_lsM}@mB";
    "road_name" = "_ufzDi_lsM}@mB";
}, {
    "encoded_polyline" = "}vfzDwblsMb@a@f@a@";
    "road_name" = "}vfzDwblsMb@a@f@a@";
}, {
    "encoded_polyline" = "qtfzD{dlsMoA}B";
    "road_name" = "qtfzD{dlsMoA}B";
});
vehicle = {
    axles = 2;
};
}

请指导其中的错误以及如何纠正。

【问题讨论】:

  • ; 应该是 ,() 必须是 []
  • 但在系统中我猜这无法生成
  • =; 都不属于 JSON。 JSON 对象的格式为 { "key": value, "key": value },而不是 { "key" = value; key = value }。数组是 [val1, val2],而不是 (val1; val2;)
  • 但是我如何生成这个我创建的字典并在其中设置对象
  • 你是如何生成这个......不是json但应该生成的东西?

标签: ios json post


【解决方案1】:

经过验证的 JSON

{
    "departure_time": "2017-07-28T17:39:43.611Z",
    "steps": [{
        "encoded_polyline": "ytfzDqzksM_AgB",
        "road_name": "ytfzDqzksM_AgB"
    }, {
        "encoded_polyline": "yvfzDy}ksMPMf@a@",
        "road_name": "yvfzDy}ksMPMf@a@"
    }, {
        "encoded_polyline": "_ufzDi_lsM}@mB",
        "road_name": "_ufzDi_lsM}@mB"
    }, {
        "encoded_polyline": "}vfzDwblsMb@a@f@a@",
        "road_name": "}vfzDwblsMb@a@f@a@"
    }, {
        "encoded_polyline": "qtfzD{dlsMoA}B",
        "road_name": "qtfzD{dlsMoA}B"
    }],
    "vehicle": {
        "axles": 2
    }
}

验证时间 - https://jsonlint.com/

【讨论】:

  • 如果它可以接受这个答案,它也会帮助其他人。 @iPhone7
【解决方案2】:

首先,分号必须用逗号代替分隔行,除了最后一行不需要任何东西:

"encoded_polyline" = "qtfzD{dlsMoA}B",
"road_name" = "qtfzD{dlsMoA}B"

要声明一个数组,请使用方括号,而不是圆括号:

"steps" = [{
    "encoded_polyline" = "ytfzDqzksM_AgB";
    "road_name" = "ytfzDqzksM_AgB";
}, {
    "encoded_polyline" = "yvfzDy}ksMPMf@a@";
    "road_name = "yvfzDy}ksMPMf@a@";
}]

最后,JSON 中不使用等号。而是使用冒号:

"departure_time" : "2017-07-28T17:39:43.611Z"

【讨论】:

  • JavaScript 不需要引号来定义键。 JSON 可以。
  • 谢谢,但我知道,我想知道如何使用上述数据创建这种格式
  • 我实际上已经按照您的要求告诉了您格式有什么问题。
猜你喜欢
  • 1970-01-01
  • 2016-10-08
  • 2013-02-24
  • 2018-02-23
  • 1970-01-01
  • 1970-01-01
  • 2015-12-04
  • 1970-01-01
相关资源
最近更新 更多