http 处理 404 错误

法赫姆莫兹

此函数应该在一切正常时返回数据,并在收到 404 错误时返回 0。

function httpGet(url)
    {
        if (window.XMLHttpRequest)
        {
            xmlhttp=new XMLHttpRequest();
        }
        else
        {
            xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
        }
        xmlhttp.onreadystatechange=function()
        {
            if (xmlhttp.readyState==4 && xmlhttp.status==200)
            {
                return xmlhttp.responseText;
            }
            if(xmlhttp.readyState==4 && xmlhttp.status==404)
            {
                return 0;
            }
        }
        xmlhttp.open("GET", url, false );
        xmlhttp.send();    
    }

例如,

username = '_ele';
httpGet('https://api.scratch.mit.edu/users/'+username+'/followers'); 

会抛出 404 错误,但我希望函数返回值 0,该怎么做?

明流

你可以试试这个版本

function httpGet(url)
    {
        if (window.XMLHttpRequest)
        {
            xmlhttp=new XMLHttpRequest();
        }
        else
        {
            xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
        }

        xmlhttp.open("GET", url, false );
        xmlhttp.send();    
        if (xmlhttp.status != 200) {
          // catch error
          return xmlhttp.status + ': ' + xmlhttp.statusText; // expample error: 404: Not Found
        } else {
          // response
          return xmlhttp.responseText;
        }
    }

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章