Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/463.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何处理;未捕获引用错误:未定义http“;错误_Javascript - Fatal编程技术网

Javascript 如何处理;未捕获引用错误:未定义http“;错误

Javascript 如何处理;未捕获引用错误:未定义http“;错误,javascript,Javascript,我一段时间前就开始了,不幸的是,它没有起作用。我决定查看控制台,发现它没有发送请求头,因为它们不安全。所以我决定暂时把它们注释掉 然而,还有一个问题:“http没有定义”。我该如何解决这个问题 // will use this to turn an object into a url encoded string var serializeObject = function(obj) { var output = ''; for(var attr in obj) { if(obj

我一段时间前就开始了,不幸的是,它没有起作用。我决定查看控制台,发现它没有发送请求头,因为它们不安全。所以我决定暂时把它们注释掉

然而,还有一个问题:“http没有定义”。我该如何解决这个问题

// will use this to turn an object into a url encoded string
var serializeObject = function(obj) {
  var output = '';
  for(var attr in obj) {
    if(obj.hasOwnProperty(attr)) {
      output += attr + '=' + obj + '&';
    }
  }
  return output.slice(0, -1);
};
var url = 'http://spacej.ru/sample/getMcoordinates.php';
// you need to serialize your data into key value pairs like the following
var exampleCoords = {
  x: 31,
  y: 74,
  z: 28
};
// postData will be x=10&y=20&z=30
var postData = serializeObject(exampleCoords);

var request = new XMLHttpRequest();
request.open('POST', url, true);
/*
request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
request.setRequestHeader("Content-length", postData.length);
request.setRequestHeader("Connection", "close");

*/

// this function gets called when the request changes

  // mistake pops up here ! 

    http.onreadystatechange = function() {
    // request was successful
    if(http.readyState == 4 && http.status == 200) {
        alert(http.responseText);
    }

}


http.send(postData);

尝试将http变量重命名为requesthttp变量似乎没有在代码中的任何地方声明

嗯,http未定义意味着http未定义。你似乎只重命名了一半的变量,或者根本不知道你在做什么,只是复制/粘贴了一些东西,猜测它会神奇地工作。实际上,他只是复制/粘贴了他在上一个问题中回答的代码,有这个bug。很高兴这能工作!那么你介意把我的答案标为正确答案吗?