我有一个非常简单的ajax
调用,该调用是从名为php
的{{1}}文件中提取的,出于我们的目的,functions.php
正在回应“这有效!”。这是我非常简单的functions.php
电话代码:
ajax
这是const ajax = new XMLHttpRequest();
const url = "/layout-1/functions.php";
ajax.open("GET", url);
ajax.onload = handleAjax(ajax);
ajax.send()
const response = ajax.response;
console.log(ajax);
console.log(response);
函数(虽然不太适用):
handleAjax()
在上面的function handleAjax(xh) {
"use strict";
if (xh.readyState === 4) {
switch (xh.status) {
case 401:
console.log("You are unauthroized to access this");
break;
case 403:
console.log("This is a forbidden asset");
break;
case 404:
console.log("Can't find the asset");
break;
case 500:
console.log("Server failure");
break;
}
}
}
调用之后,我是console.logging两件事:我创建的ajax
对象和该对象上的属性ajax
。在对象的日志中,我可以看到文本“这个工作!”,但在变量response
的日志中,我什么也没得到,它只是空白。我也尝试过记录response
,同样的事情发生了,只是console.log中的一个空行。
为什么对象中存在响应,但是当我尝试直接访问响应时,它是空白的?
我不知道这个问题是如何适用于我的,因为我没有在我的响应文本中得到未定义,发生的事情是响应返回一个空字符串,但是正确的响应生活在responseText
对象中。也许我错过了相关问题中的一些内容,但我认为我没有。