reactjs - Axios GET 请求随机超时
问题描述
我们正在开发一个 React 应用程序,它使用 Axios 进行 REST API 调用。我们随机看到请求超时。我们检查了网络连接,一切正常(100 MBPS 连接)。我们检查了我们的服务器日志,请求到达了服务器并且它得到了处理,没有任何错误。但客户从未得到回复。我正在添加我们用来在下面进行这些 api 调用的代码。如果您发现代码有任何问题,我们将非常感谢您提供解决方案。如果您认为代码看起来不错,那么请给我们一些解决/调试超时的提示。我还在下面添加错误。
import axios from 'axios';
import axiosRetry from 'axios-retry';
import { v4 } from 'uuid';
axios.defaults.timeout = 30000;
axios.interceptors.request.use((config) => {
const updatedConfig = { ...config };
updatedConfig.headers['X-CORRELATION-ID'] = v4();
return updatedConfig;
});
axiosRetry(axios, {
retries: 3,
retryDelay: (retryCount) => retryCount * 1000,
});
axios({
method: 'get',
url: `${requestURL}`,
headers: {
authorization: `Bearer ${token}`,
},
})
.then((response) => {
console.log(response);
})
.catch((error) => {
console.log(error);
});
{
"error": {
"message": "timeout of 30000ms exceeded",
"name": "Error",
"stack": "Error: timeout of 30000ms exceeded\n at e.exports (https://file.js:2:2141051)\n at XMLHttpRequest.h.ontimeout (https://file.js:2:2140157)",
"config": {
"url": "requestURL",
"method": "get",
"headers": {
"Accept": "application/json, text/plain, */*",
"authorization": "Bearer TOKEN",
"X-CORRELATION-ID": "UDID"
},
"transformRequest": [null],
"transformResponse": [null],
"timeout": 30000,
"xsrfCookieName": "XSRF-TOKEN",
"xsrfHeaderName": "X-XSRF-TOKEN",
"maxContentLength": -1,
"axios-retry": {
"retryCount": 0,
"lastRequestTime": 1597096169071
}
},
"code": "ECONNABORTED"
}
}
提前致谢
解决方案
推荐阅读
- javascript - 试图将文本文件加载到
标签,为什么它不起作用?
- pandas - 如何在matplotlib中绘制像A *这样的分级字母
- python - 将数据框中的 NaN 值替换为基于其他列的相应值
- arrays - 如何在 C 中正确平均这些数字?
- python - 每天使用 gitpython 提交是否违反 GitHub TOS
- javascript - 一个仍在网站上反映的恶意链接
- vue.js - 为什么 v-text 不能显示字符串
- javascript - 如何在 django 中将输入标签与表单字段连接起来
- nlp - 对话式 AI 的 BERT 微调
- javascript - 使用 Svelte 从 Javascript 中的 GraphQL 查询访问数据时出现问题