XMLHttpRequest不发送
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了XMLHttpRequest不发送相关的知识,希望对你有一定的参考价值。
这是扩展代码的一部分:
let url = "https://mywebsite.com/data.php";
function newRequest() {
var client = new XMLHttpRequest();
client.open("POST", url, true);
client.setRequestHeader("Content-Type", "text/plain;charset=UTF-8");
client.send("status=true");
console.log(client.status);
}
newRequest();
其中还在控制台中记录0。我一直在关注这里的文档:https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest,尝试无数次调整,并且控制台中没有任何错误。不确定问题是什么。
我的服务器上的PHP肯定有效,因为我能够从本地html文件成功发布数据。
答案
由于AJAX请求是异步的,因此您需要通过回调onreadystatechange
来处理它。
代码应该是这样的
let url = "https://mywebsite.com/data.php";
function newRequest() {
var client = new XMLHttpRequest();
client.onreadystatechange = function() {
console.log(this.readyState) // should be 4
console.log(this.status) // should be 200 OK
console.log(this.responseText) // response return from request
};
client.open("POST", url, true);
client.setRequestHeader("Content-Type", "text/plain;charset=UTF-8");
client.send("status=true");
console.log(client.status);
}
newRequest();
希望这可以帮助。
欲了解更多信息:https://www.w3schools.com/js/js_ajax_http_response.asp
以上是关于XMLHttpRequest不发送的主要内容,如果未能解决你的问题,请参考以下文章