x402 付款要求 · 更新于
x402 的 payTo 地址变化时,该比较什么?
收款对象不同值得注意,但变化本身不能解释原因。在你的付款策略决定如何处理前,请比较完整要求、观测时间与资源。
阅读图解证据示例五部分比较
从完整要求开始。
payTo 值必须结合网络、资产、金额、方案与资源来看才有意义。保留客户端实际收到的挑战及其时间戳,才能与已保存的观测比较,而不是单独比较一个地址。
| 字段 | 较早的观测 | 新的挑战 | 差异能说明什么 |
|---|---|---|---|
| 资源 | /v1/resource | /v1/resource | 这项比较仍针对相同的端点路径。 |
| 网络 | eip155:8453 | eip155:8453 | 此示例的付款网络没有变化。 |
| 资产 | synthetic token 0x…C3 | synthetic token 0x…C3 | 列出的网络上出现相同的说明用合约标识符。 |
| 金额 | 1000 atomic units | 1000 atomic units | 此示例的金额没有变化。 |
payTo | 0x…A1 | 0x…B2 | 公布的收款对象不同。证据不会提供变化原因。 |
所有缩写地址都是仅供显示的合成标识符,不能用作付款指示。
payTo- 该付款选项公布的收款对象。出现差异表示客户端被要求向不同的收款对象值付款。
- 网络+资产
- 结算上下文。相同的地址文本若位于其他网络,或相同代号指向其他资产标识符,都不是相同的付款选项。
- 金额
- 金额是 IFF 完整选项指纹的一部分。如果方案、网络、资产与收款对象相同而只有金额变化,预检比较可将其分类为
amount_only。 - 资源
- 端点 URL 决定 IFF 记录与比较范围。不同主机或路径应视为不同资源检查。资源不包含在 IFF 的付款选项指纹中。
得出结论前了解背景
变化可能是常规操作。
服务提供者可能轮换资金管理地址、迁移托管服务、变更资产或网络、更新价格,或部署新的资源路径。缓存或延迟的挑战也可能让有效转换短暂看似不一致。这些都是应调查的可能性,不是 IFF 已证实的解释。
diverged 表示客户端提供的选项中,至少一项与近期观测选项的并集不符。amount_only 表示每个提供的选项在方案、网络、资产与收款对象上都与某项观测相符,但至少一项的金额不同。范围更广的 payee 分类表示至少一个提供的选项在非金额字段中找不到相符项;它并不声称只有收款对象变化。
过期观测还有另一项限制。IFF 仍会将新要求与最近的观测时间窗口比较并报告 matches_last_observed,但判定仍为 stale。这能告诉你条件是否符合最后保存的证据,却不能让旧证据成为最新数据。
记录包含什么
用历史记录确认顺序,不推断动机。
最新的公开证据卡会显示当前保存的付款选项与观测时间。其中 requirements.current 与 requirements.history 区块会汇总连续的指纹区段,包括首次出现、最后出现与观测次数。公开历史记录能指出规范化后的选项集合发生变化,但不会公开纯文本的变化前后说明,也不会把变化归因于某位操作人员。
- 比对准确的资源。比较同一个规范化的公开 HTTPS 端点,包括路径。
- 检查时间戳与新鲜度。较早的挑战与较新的观测可能描述不同但都合理的状态。
- 比较所有公布的选项。选项顺序与重复条目不会产生不同的规范化集合;方案、网络、资产、收款对象与金额则会。
- 分开看待所有权与要求。所有权维度为 verified 表示记录了来源站控制权。它不证明对付款地址的控制权,observed 层级卡片的所有权也可能未经验证。
- 应用自己的暂停付款或升级处理规则。变化超出你的策略时,通过另一个可信渠道向服务提供者确认。
由你的付款策略决定
这些观测不能证明什么。
要求相符是与近期观测一致的证据。要求发生变化是存在差异的证据。两种结果都不能证明付款安全性、收款对象所有权、授权、已确认的欺诈、服务交付、结算或付款后响应的正确性。