跳到主要内容
uencoder

如何Validate JSON

检查 whether a string is valid JSON and identify syntax errors with their locations.

问题

你有 JSON 字符串从 untrusted 或 hand-edited 源和 need 到验证它 是 syntactically 正确.

前置条件

  • Understanding 的 JSON syntax
  • Ability 到读取错误 messages

步骤

  1. 1. Parse the JSON string

    Attempt to parse the string as JSON. A standards-compliant parser will throw an error if the syntax is invalid. Common errors include trailing commas, single-quoted strings, and missing brackets.

    输入
    {"name":"John",}
    输出
    Error: Unexpected token } at position 15
  2. 2. Interpret the error location

    If parsing fails, the error message typically includes the position or line number of the problem. Go to that location in the input and fix the syntax issue. Repeat until parsing succeeds.

    输入
    position 15
    输出
    trailing comma before }
  3. 3. Optionally validate against a schema

    If you have a JSON Schema, validate the parsed JSON against it to check not just syntax but structure (required fields, types, value ranges). Schema validation catches semantic errors that syntax parsing cannot.

    输入
    JSON + schema
    输出
    valid or schema errors

预期结果

Confirmation 该 JSON 是有效, 或清除错误消息 identifying 问题和 其位置.

常见错误

Trailing comma in object or array
JSON does not allow trailing commas. Remove the comma after the last element.
Single-quoted strings
JSON requires double quotes for strings and keys. Replace single quotes with double quotes.

排障指引

  • If the error position seems wrong, check for invisible characters like BOM or zero-width spaces.
  • Use a JSON validator with line and column numbers for easier debugging.

安全限制

  • Parsing untrusted JSON is generally safe, but do not use eval() to parse JSON — it can execute arbitrary code. Use JSON.parse instead.

相关工具

参考链接