错误与重试
规划 API: 本页说明 runtime 发布后的错误与恢复策略。
commflow@0.0.2尚未提供 request、SSE、RPC 或 socket runtime;当前可运行导出见 当前版本快速开始。
如何使用本页
先按结果分类判断调用是否收到了有效响应,再决定重试、降级或暴露给业务。安装、导入、Node 版本或当前导出问题见 FAQ 与排错。
结果分类
commflow 的错误模型区分三类结果:
这样的边界能避免一个常见误区:HTTP 500 不一定等于 transport error;它仍然是服务端给出了 HTTP 响应。
Request 错误处理
推荐写法是先判断 HTTP 响应,再捕获真正的 transport failure。
目标错误类型:
重试策略
重试不是越多越好。建议按“是否幂等、失败是否短暂、用户是否能承受延迟”决定。
最小目标配置:
retry 表示额外尝试次数;retryDelay 表示下一次尝试前的等待时间。SSE 和 socket 使用 reconnect,不使用 request 的 retry 字段。
Hook secondary failure
afterResponse、onRetry 和 onError 这类观察型 hook 失败时,不应该把一个已经成功的主请求改成失败。
只有 beforeRequest 这类会影响请求构造的 hook 抛错时,才应阻断请求。