如何使用JavaScript获取请求?

时间:2015-05-21 15:40:35

标签: javascript http get request

如果这是一个微不足道的问题我很抱歉,但我找不到如何使用JavaScript发出请求。

var request = new XMLHttpRequest();
request.open("GET", "http://www.google.com");
alert(request.status);

我得到0,但http状态应该在100到600之间。我哪里出错了?

3 个答案:

答案 0 :(得分:2)

查看文章How to get the response of XMLHttpRequest

简而言之,XMLHttpRequest默认是异步的,因此您需要在onreadystate上注册一个回调函数。

var request = new XMLHttpRequest();
request.onreadystatechange=function(){
  if (request.readyState==4 && request.status==200){
    alert(request.status);
    // To get the response use request.responseText;
  }
}
request.open("GET", "http://www.google.com");
request.send(null);

请注意,对于旧版本的IE(IE5和IE6),您需要从ActiveX对象获取请求,如下所示:

variable=new ActiveXObject("Microsoft.XMLHTTP");

答案 1 :(得分:1)

问题在于您永远不会提出请求。 See an example of XMLHttpRequest here.

function reqListener () {
  console.log(this.responseText);
}

var oReq = new XMLHttpRequest();
oReq.onload = reqListener;
oReq.open("get", "http://www.google.com", true);
oReq.send();

通知oReq.send(),它发送请求。另请注意reqListener函数,该函数在请求完成时调用。

答案 2 :(得分:0)

我不确定,但您只是定义了您的请求。你忘记发了吗?

尝试

var request = new XMLHttpRequest();
request.open("GET", "http://www.google.com");
request.send(null);
alert(request.status);