获取API或XMLHTTPRequest:如何获取网络错误的确切错误原因?

时间:2018-11-13 13:10:10

标签: javascript xmlhttprequest fetch

如何检索有关网络错误的确切信息? Chrome浏览器将类似“ net :: ERR_CONNECTION_TIMED_OUT”或“ net :: ERR_CERT_INVALID”的内容打印到控制台中,但是如何通过JS检索它们呢?有可能完全得到他们吗?目前,我使用提取API,但可以轻松切换到XMLHTTPRequest。

我需要处理此类错误以通知用户并让他知道他需要做什么。

2 个答案:

答案 0 :(得分:1)

为了防止安全性问题,有意通过JavaScript无法访问此信息。

以下是Chromium错误报告,要求在2017年5月使用此功能:https://bugs.chromium.org/p/chromium/issues/detail?id=718447

答案 1 :(得分:0)

您可以获得以下确切错误:

     fetch('url',
        {
            headers: {
                'Accept': 'application/json',
                'Content-Type': 'application/json'
            },
            method: "POST",
            body: JSON.stringify({data})
        })
        .then(function(response) {
            console.log(response);
            //handle here or in catch
         })
        .then(function(json){
            console.log("succeed json re");
        });

您的诺言得到解决后,您将获得坚决的回应。

Response.status 将为您提供状态码。 Response.statusText 将为您提供确切的错误描述,为ERR_CONNECTION_TIMED_OUT。如果出现错误,则 response.ok 将为假。

有关更多信息:FETCH