You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

从Response.json()返回的JSON验证无效,请求分析原因

JSON验证失败的问题修复

问题场景

在验证应用输出的JSON时,工具提示无效,但该JSON能通过fetch()的Response.json()正常解析,原代码如下:

{
    records: [{
        id: 70,
        whse: '00',
        partNo: '100E',
        description: '1" EMT CONDUIT (BUNDLE QTY. 1000FT)',
    }],
    start: 0,
    limit: 10,
    count: 1
}

验证时的错误提示:

Error: Parse error on line 1:
{   records: [{     id: 70
--^
Expecting 'STRING', '}', got 'undefined'

错误原因

JSON是严格格式的文本规范,和JS对象字面量存在区别,你的代码不符合JSON标准的核心问题有4点:

  • 所有键名(比如records、id)必须用双引号包裹,不能省略引号或使用单引号
  • 字符串值必须用双引号包裹,不能用单引号
  • 数组/对象的最后一个元素后不能加尾随逗号(trailing comma)
  • 字符串中的双引号需要用\"转义,而非HTML转义字符"

修复后的有效JSON

{
    "records": [
        {
            "id": 70,
            "whse": "00",
            "partNo": "100E",
            "description": "1\" EMT CONDUIT (BUNDLE QTY. 1000FT)"
        }
    ],
    "start": 0,
    "limit": 10,
    "count": 1
}

补充说明

Response.json()能解析你的代码,是因为部分浏览器的JSON解析器对非严格的JS对象格式做了兼容,但这不符合JSON官方规范,因此在严格的JSON验证工具中会报错。要保证JSON的通用性,必须严格遵循格式要求。

内容的提问来源于stack exchange,提问作者JLCarveth

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.05 09:20:33