-
Notifications
You must be signed in to change notification settings - Fork 28
Open
Description
常见的给请求加 timeout 的代码:
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可以更简单:
return fetch(url, { signal: AbortSignal.timeout(timeout) })yolio2003
Metadata
Metadata
Assignees
Labels
No labels