以下代码用了AbortController的abort方法,调接口时间超过10秒没响应结果自动中止
import request from 'umi'
const controller = new AbortController();
const signal = controller.signal;
useEffect(() => {
const timeout = setTimeout(() => {
controller.abort();
console.error('请求超时或中止');
}, 10000);
request1(signal)
request1(signal)
return () => {
clearTimeout(timeout);
controller.abort();
};
}, []);
const request1 = async (signal) => {
await request(prefix + 'app/interface/path1', { signal })
}
const request2 = async (signal) => {
await request(prefix + 'app/interface/path2', { signal })
}