如何处理集成项目中的第三方 API 变更
第三方 API 变更不仅仅是开发人员的问题。如果集成构建时假设外部服务永远保持不变,那么这些变更最终会变成支持工单、错过的同步任务、计费错误和愤怒的客户经理。我在这方面吃过几次亏,尤其是那些发布变更速度快于文档更新速度的小型 SaaS 供应商。 我现在做的第一件事是停止将供应商文档视为唯一的合同。我保留了一套小型合同测试,这些测试会访问供应商的沙盒或记录的响应,并检查我们实际依赖的字段。不是响应中的每个字段,只有那些如果发生变更会破坏我们工作流程的字段。ID、状态值、分页行为、时间戳、Webhook 签名和错误代码通常是重要的部分。 Webhook 需要格外小心。供应商可能会添加新的事件类型、重新发送旧事件、更改重试时间或以不同的顺序发送字段。我们的处理程序应该是枯燥的:验证事件、存储原始负载、按事件 ID 去重,然后在工作进程中处理它。如果处理失败,原始负载仍然存在,支持人员可以在不要…