# 回调故障故障排除

> 请查看有关 Offerwall 回调失败故障排除指南以获取 Offerwall 奖励。

如果您遇到回调失败升高的情况，或者用户没有收到优惠墙奖励，则问题通常与终端配置、网络可达性、有效负载处理或 HTTP 方法不匹配有关。
请查看以下故障排除指南以确定和解决故障的根本原因。

## 验证回调网址和方法配置##verify-callback-url-and-method-configuration

回调失败的最常见原因是无效网址或请求发送方式与服务器预期不匹配。检查控制面板设置以确保以下几点：

* **激活网址**：确保配置了有效的回调网址，并且未被意外删除或设置为 `NO_CALLBACK`。
* \*\*HTTP 方法（GET 与 POST）\*\*验证回调配置为 GET（默认）还是 POST 请求的形式发送。
  * 如果配置为 GET 或 POST，请确保终端已显式配置为监听并正确解析所选方法。
  * 如果配置为 POST，请确保服务器正在正确读取请求正文。
* **格式**：验证网址是否具有有效的方案（`https://`）、主机和路径，并且没有输入错误或格式错误的查询字符串。
* **环境**：确认网址指向生产环境，而不是临时或测试终端。
* **参数**：确保所有必需的参数和宏都存在于网址结构中。

## 检查网络、传输和安全规则##check-network-transport-and-security-rules

如果 Offerwall 服务器无法访问您的终端，回调可能会失败。检查服务器和网络生命值/血量/体力值是否有以下内容：

* 防**火墙和 WAF**：检查 Web 应用程序防火墙 (WAF) 或安全设置。确保已允许列出 Offerwall 回调 IP 地址，并且不会无意中阻止流量。
* **证书**：确保您的终端提供有效的未过期 SSL/TLS 证书。
* **超时和可达性**：检查 DNS 解析失败、连接超时或间歇性终端可用性。
* **速率限制**：如果已启用速率限制，请检查是否有大量回调爆发触发代码块。确保服务器可以处理突发流量峰值。

## 分析 HTTP 响应代码##analyze-http-response-codes

Offerwall 需要 200 个 OK 响应。如果服务器返回其他 HTTP 状态代码，则会记录失败并可能重试。检查服务器日志以了解以下常见报错代码：

* **3xx（重定向）**：避免重定向。迁移应直接在 Offerwall（提供墙）后台中更新。如果意外重定向，回调发送方可能会丢弃有效负载。
* \*\*400（错误请求）：\*\*指示错误的请求。检查服务器是否由于缺少参数、格式不匹配或无效数据类型而拒绝有效负载。
* \*\*401 / 403（未授权/禁止）：\*\*指示 Authentication 失败。验证身份验证令牌、签名或 IP 允许列表是否为最新。如果您最近旋转了密钥，请确保更新了 Offerwall。
* **404（未找到）**：终端路径不正确或已被删除。检查是否在不更新回调网址的情况下执行了最近的服务器迁移。
* \*\*405（方法不允许）：\*\*服务器正在拒绝 HTTP 方法。如果回调以 POST 形式发送，但服务器期望 GET（反之亦然），则几乎总是会发生这种情况。
* **409（冲突）**：通常由重复的交易拒绝逻辑引起。确保幂等性逻辑不会太激进（例如，拒绝有效重试）。
* \*\*429（请求太多）：\*\*服务器正在限制 Offerwall。调整速率限制以适应流量爆发。
* **5xx（服务器错误）**：指示服务器上的后端不稳定、服务停机或应用程序崩溃。

## 验证有效负载和参数完整性##validate-payload-and-parameter-integrity

如果回调正在到达服务器，但用户仍未获得奖励，则服务器可能会拒绝回调的内容：

* **签名匹配**：如果需要签名 Authentication，请验证哈希逻辑是否与 Offerwall 预期格式匹配。
* **宏分辨率**：检查用户 ID、交易 ID 和奖励金额是否正在正确解析，而不是作为文本字符串处理（例如，读取`[USER_ID]`而不是实际用户 ID）。
* **下游处理**：如果要返回 200 个 OK，但用户仍未获得奖励，请调查下游处理情况。确保回调确认与您的实际用户奖励事件保持一致。

## 回顾最近的更改##review-recent-changes

如果回调失败突然激增，请对照您自己的内部工程日志来交叉参考失败的确切时间。请考虑以下问题：

* 您最近是否推送了产品版本或配置更新？
* 是否旋转了服务器机密或身份验证令牌？
* 您是否迁移了终端、更新了服务器基础架构或更改了可接受的 HTTP 方法？

## 其他支持##additional-support

如果您已验证上述所有故障排除指南，但仍遇到回调故障，请联系您的帐户经理或支持代表并提供以下信息：

* 受故障影响的指定的 app ID
* 观察到故障的确切时间窗口
* 失败的用户 ID 或交易 ID 样本
* 在故障期间捕获的任何相关服务器日志或 HTTP 响应体
