第 6 课

JSON 在 API 与配置中的应用

REST 载荷、配置文件,以及 JSON 与 XML、YAML 的对比。

在真实场景中理解 JSON,有助于合理选型并更高效地阅读文档。

REST API

HTTP API 常用 JSON 作为请求体,有时也用于 POST 的业务数据:

POST /users HTTP/1.1
Content-Type: application/json

{"name": "Ada", "role": "admin"}

响应通常也是 JSON。状态码在 HTTP 头中;JSON 承载业务数据。结构可能通过 OpenAPI、JSON Schema 或示例说明。

配置文件

package.jsontsconfig.json 及许多 CI 配置都使用 JSON。优点:

  • 程序易于解析
  • 编辑器支持广泛
  • 格式化后在版本控制中便于 diff

代价:严格 JSON 不支持注释(部分工具接受 JSONC,但可移植配置仍建议标准 JSON)。

JSON 与 XML

JSONXML
冗长度通常更短标签往往更多
类型较少(字符串、数字等)属性 + 文本节点
模式描述JSON Schema、OpenAPIXSD、DTD
当今常见用途Web API遗留企业系统、文档

JSON 与 YAML

YAML 更适合人工编写大型配置,且支持注释,Kubernetes、Docker Compose 中常见。注意:依赖缩进,大规模不可信输入下解析更需谨慎。JSON 更严格,适合不可信数据;YAML 常在人手维护的配置中选择。

安全提示

不要对 JSON 文本使用 eval()——应使用专用解析库。对不可信载荷应做 schema 校验并限制体积,以降低拒绝服务风险。

课程小结

你已掌握 JSON 的语法、类型、结构、常见错误与实际用途。阅读 API 文档、设计载荷或在 Pull Request 中审查配置变更时,可直接运用这些知识。

想动手练习时,可使用 DevCove 相关工具——可选,不属于本课正文。

打开相关工具

返回课程概览