如何在js文件中单独设置摸个请求超时时长
时间: 2024-12-22 16:27:57 浏览: 4
在JavaScript中,通常我们使用`fetch()`或者`axios`等库来进行HTTP请求,并可以设置默认的超时时间。这里分别介绍两种常见库的做法:
1. 使用`fetch()`:
```javascript
const timeout = 5000; // 设置超时时间为5秒(毫秒)
fetch('https://example.com', {
method: 'GET',
timeout: timeout, // 当请求超过指定时间未响应时,会自动取消请求
})
.then(response => response.json())
.catch(error => {
if (error instanceof TimeoutError) {
console.error('请求超时');
} else {
console.error('其他错误:', error);
}
});
```
2. 使用`axios`:
```javascript
import axios from 'axios';
const config = {
timeout: 5000, // 设置超时时间为5秒
};
axios.get('https://example.com', config)
.then(response => response.data)
.catch(error => {
if (error.response && error.response.status === 408) { // 如果是超时错误,status通常为408
console.error('请求超时');
} else {
console.error('其他错误:', error);
}
});
```
在以上代码中,如果请求超过设定的时间(这里是5秒),就会触发相应的错误处理逻辑。
阅读全文