July 5, 2026

以 Markdown 格式查看

2.71.1

(fix): 修复 SSE 流重连正确性以匹配参考实现: (1) 未配置终止符时不重连(客户端无法区分已完成的流和断开的连接)。 (2) 当服务器未发送 retry: 指令时,重连尝试之间应用默认 1 秒退避(之前为零延迟)。 (3) 使用最后一个已分发的事件 ID 进行重连,而非最后一个已解析的 id,防止在事件中途断开时静默丢失事件。 (4) 将重连函数失败视为已消耗的尝试;当上限用尽时抛出 IOException 并将最后一次失败作为 InnerException,而非静默截断流。 (5) 让 OperationCanceledException 从 reconnectFn 立即传播,而非将其作为重试尝试吞没。 (6) 仅在成功获取新响应后才释放旧 HTTP 响应,防止重试时出现 ObjectDisposedException。