概述`AbortSignal.timeout(ms)` 生成在指定毫秒后自动中止的信号;`AbortSignal.any([...])` 合并多个信号,当任意一个触发时中止。用法/示例// 超时中止 await fetch('/api', { signal: AbortSignal.timeout(3000) }) // 组合中止:用户取消或超时均可中止 const controller = new AbortController() const signal = AbortSignal.any([controller.signal, AbortSignal.timeout(5000)]) try { await fetch('/task', { signal }) } finally { /* 清理 */ } 工程建议在统一封装中提供默认超时与可覆盖策略,避免悬挂请求。为组合中止添加错误处理与回滚;记录中止原因用于观测。对不支持环境回退到 `AbortController` 与手动计时。参考与验证MDN:AbortSignal — https://developer.mozilla.org/docs/Web/API/AbortSignalChrome Docs:AbortSignal.timeout — https://developer.chrome.com/docs/web-platform/abort-signal

点赞(0) 打赏

评论列表 共有 0 条评论

暂无评论
立即
投稿

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部