Axios可以区分"没有网络"和"网络断开"

时间:2018-01-09 11:48:01

标签: javascript error-handling axios

Axios是否可以区分以下内容:

  • 由于客户端没有网络连接而失败的请求 提出请求的时间点 - (ERR_CONNECTION_REFUSED)。
  • 由于网络连接在之后丢失而导致请求失败 请求已收到之前收到回复 - (ERR_INTERNET_DISCONNECTED)。

似乎在这两种情况下,我们所得到的只是一个相当无益的网络错误"消息...

Axios文档(https://github.com/axios/axios#handling-errors)建议在后一种情况下,应填充error.request,但我无法复制任何场景{{1}存在。在上述两个场景中,我得到一个如下所示的错误对象:

error.request

1 个答案:

答案 0 :(得分:2)

我不知道您能否获得 ERR_CONNECTION_REFUSED ,但是 ERR_INTERNET_DISCONNECTED 您可以使用本机Web网络信息API,请看下面的代码段:

var connection = navigator.connection || navigator.mozConnection || navigator.webkitConnection;
console.log(connection);

connection.type: "none"表示您是ERR_INTERNET_DISCONNECTED时,也许您可​​以探索此解决方案。

您可以阅读完整的文档here,cya