# API04005: 尝试恢复 JSON

## 这意味着什么[​](#what-this-means "直接链接到 这意味着什么")

服务器发送了包含一些无效 JSON 内容的响应，但 POS 尝试恢复并提取有效数据。这是一个信息通知，而不是一个严重错误。

## 发生了什么[​](#what-happened "直接链接到 发生了什么")

POS 检测到：

1. 响应在 JSON 之前或之后包含额外内容
2. 核心 JSON 数据仍然可以识别
3. 尝试通过提取有效 JSON 部分进行恢复

## 常见原因[​](#common-causes "直接链接到 常见原因")

* **输出中的 PHP 通知** — PHP 警告与 JSON 混在一起
* **调试输出** — 开发调试未关闭
* **插件通知** — 其他插件输出通知
* **空格问题** — JSON 周围的额外空格

## 如何修复[​](#how-to-fix "直接链接到 如何修复")

### 1. 禁用 PHP 显示错误[​](#1-disable-php-display-errors "直接链接到 1. 禁用 PHP 显示错误")

在 `wp-config.php` 中：

```
define('WP_DEBUG_DISPLAY', false);

ini_set('display_errors', 0);
```

### 2. 启用错误日志记录[​](#2-enable-error-logging-instead "直接链接到 2. 启用错误日志记录")

保持错误记录以便调试：

```
define('WP_DEBUG', true);

define('WP_DEBUG_LOG', true);
```

### 3. 检查插件调试模式[​](#3-check-for-plugin-debug-mode "直接链接到 3. 检查插件调试模式")

一些插件具有输出额外内容的调试模式：

* 审查插件设置
* 禁用调试/开发模式
* 检查详细日志选项

### 4. 检查最近的变更[​](#4-review-recent-changes "直接链接到 4. 检查最近的变更")

如果最近才开始这样：

* 你的服务器上发生了什么变化？
* 插件是否更新？
* PHP 设置是否修改？

## 这很严重吗？[​](#is-this-serious "直接链接到 这很严重吗？")

尽管 POS 从此问题中恢复了，但这表明存在应该修复的配置问题。恢复过程：

* 可能并不总是有效
* 增加处理开销
* 可能掩盖其他问题

修复根本原因以确保可靠运行。

## 相关错误[​](#related-errors "直接链接到 相关错误")

* [API04003](/zh-CN/error-codes/API04003.md) — 格式错误的 JSON 响应
* [API04001](/zh-CN/error-codes/API04001.md) — 无效的响应格式

***
