gpt4 book ai didi

javascript - 在什么情况下发出 HTTP 请求但未收到响应?

转载 作者:可可西里 更新时间:2023-11-01 17:18:52 25 4
gpt4 key购买 nike

我正在使用 axios 发出 HTTP 请求并收到错误。这是 snippet from axios docs谈论错误的处理。

axios.get('/user/12345')
.catch(function (error) {
if (error.response) {
// The request was made and the server responded with a status code
// that falls out of the range of 2xx
console.log(error.response.data);
console.log(error.response.status);
console.log(error.response.headers);
} else if (error.request) {
// The request was made but no response was received
// `error.request` is an instance of XMLHttpRequest in the browser and an instance of
// http.ClientRequest in node.js
console.log(error.request);
} else {
// Something happened in setting up the request that triggered an Error
console.log('Error', error.message);
}
console.log(error.config);
});

在我的例子中,error.request 结果为真,这意味着(根据文档)发出了请求但未收到响应。我的问题是,可能是什么原因造成的?发出请求但没有收到响应是什么情况?

谢谢

最佳答案

它经常发生有两个原因:

<强>1。 OPTIONS 请求失败

我实践的主要原因:

  • 服务器根据 OPTIONS 请求检查授权

  • 服务器发送了错误的 header

  • 服务器做一些重定向

More about OPTIONS requests

<强>2。网络问题

我在有很多防火墙的企业网络中经常看到这种情况。如果无法解决网络问题,则积极重试通常会有所帮助。

if (err && err.request && !err.response && navigator.onLine !== false) {
// try again ...
}

关于javascript - 在什么情况下发出 HTTP 请求但未收到响应?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52353631/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com