gpt4 book ai didi

javascript - 如何在 php 中显示来自 javascript XMLHttpRequest() 的 POST 值

转载 作者:行者123 更新时间:2023-11-28 07:11:59 25 4
gpt4 key购买 nike

我使用 XMLHttpRequest() javascript 函数将参数发送到 Json 格式的另一个 php 页面,但 $_POST['appoverGUID'] 未获取发布值。

这是我的 Javascript 代码。

        function loadPage(href){

var http = new XMLHttpRequest();
var url = json.php;
var approverGUID = "Test";
var params = JSON.stringify({ appoverGUID: approverGUID });
http.open("POST", url, true);
http.setRequestHeader("Content-type", "application/json; charset=utf-8");
http.setRequestHeader("Content-length", params.length);
http.setRequestHeader("Connection", "close");
http.onreadystatechange = function() {
if(http.readyState == 4 && http.status == 200) {
document.getElementById('bottom').innerHTML = http.responseText;

}
}
http.send(params);

}

这是我的 json.php 文件代码。

if(isset($_POST['appoverGUID'])){
echo $_POST['appoverGUID'];
}

最佳答案

首先删除这些 header ,因为它们将由浏览器自动发送,这是正确的方法。

http.setRequestHeader("Content-length", params.length);
http.setRequestHeader("Connection", "close");

此代码是跨浏览器解决方案,并且已经过测试。

// IE 5.5+ and every other browser
var xhr = new(window.XMLHttpRequest || ActiveXObject)('MSXML2.XMLHTTP.3.0');
var params = "appoverGUID="+approverGUID;
xhr.open("POST", url, true);

xhr.setRequestHeader("Content-type", "application/x-www-form-urlencoded; charset=UTF-8");
xhr.setRequestHeader("Accept", "application/json");
xhr.onreadystatechange = function () {
if (this.readyState === 4) {
if (this.status >= 200 && this.status < 400) {
console.log(JSON.parse(this.responseText));
}
}
}
xhr.send(params);
xhr = null;

关于javascript - 如何在 php 中显示来自 javascript XMLHttpRequest() 的 POST 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31209473/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com