/**
*
*
* @param {string} url
* @param {number} 超时时间
* @returns
*/
function request(url,wait=30) {
return new Promise((resolve, reject) => {
let status = 0; // 0 等待 1 完成 2 超时
let timer = setTimeout(() => {
if (status === 0) {
status = 2;
timer = null;
reject("超时");
}
}, 3000);
fetch(url, {
headers: {
"content-type": "application/json"
}
})
.then(res => res.json())
.then(res => {
if (status !== 2) {
clearTimeout(timer);
resolve(res);
timer = null;
status = 1;
}
});
});
}
request("/test")
.then(res => {
document.body.innerHTML =
typeof res !== "string" ? JSON.stringify(res) : res;
})
.catch(err => {
console.log("err", err);
});
fetch设置超时
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。