AbortSignal.timeout()
Open
- Dominant language
- HTML
- Stars
- 464
- Forks
- 27
- PR merge metrics
- No merged PRs in 30d
Description
常见的给请求加 timeout 的代码:
```ts
async function get(url: string, timeout: number) {
const timeoutPromise = new Promise((_, reject) => {
setTimeout(() => reject(new Error("Timeout")), timeout);
})
const fetchPromise = fetch(url)
// 使用Promise.race来竞赛fetch请求和超时Promise
return Promise.race([fetchPromise, timeoutPromise])
}
```
这代码work,但利用好API可以更简单:
```ts
return fetch(url, { signal: AbortSignal.timeout(timeout) })
```
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.