错误与重试
对创建接口、任务轮询和 webhook 接收端分别采用不同的错误处理与重试策略。
创建接口如何重试
如果遇到这些情况,可以重试:
- 请求超时
- 网络中断
- 服务端返回可重试
5xx
重试时继续沿用原来的 Idempotency-Key。
什么情况不要盲目重试创建
这些情况要先看业务错误,而不是直接无限重试:
- 模型参数不合法
- 权限或余额不足
- 输入内容不符合要求
轮询接口如何处理错误
轮询失败要区分两类:
- 接口调用失败:继续轮询
- 任务本身失败:看错误内容决定是否重新提交任务
Webhook 接收端如何处理错误
如果你的接收地址返回非 2xx,Yeehoo 会按重试策略继续投递,直到达到最大尝试次数。
接收端建议做到:
- 验签失败:返回非
2xx - 业务已成功入队:尽快返回
2xx - 不要在 webhook 请求里做长时间阻塞处理