我正在向我的本地主机发出一个纯 JS GET 请求(不用担心我测试了 POST 并且有效),我可以访问所有数据库和其他所有内容,但 GET 请求不起作用。我的JS代码如下所示:
functtion getSessionKey() {
XMLHTTP = new XMLHttpRequest();
XMLHTTP.open("GET", "http://127.0.0.1:8080/projects/To-Do-App/api/sessionData/sessionKey.php", true);
XMLHTTP.onreadystatechange = function () {
if (XMLHTTP.readyState == 4) {
alert(XMLHTTP.responseText);
}
}
XMLHTTP.send(null);
}
在PHP文件中,我有以下代码:
<?php
session_start();
if (isset($_SESSION['sessionKey']) && !empty(trim($_SESSION['sessionKey']))) {
echo htmlspecialchars(trim($_SESSION['sessionKey']));
}
?>
POST 请求全部工作并插入到数据库中,但 GET 请求似乎阻止了它下面的所有 JS 代码工作。知道为什么吗?我尝试更改最后一个参数真/假。此外,我正在尝试通过英特尔 XDK 为移动应用程序制作它,因此如果有帮助,我会使用 JS 和 PHP。请不要使用jQuery解决方案,因为这似乎不起作用。
您没有设置内容类型
var XMLHTTP = new XMLHttpRequest();
XMLHTTP.setRequestHeader("Content-type","application/x-www-form-urlencoded");
...
并尝试替换
XMLHTTP.send(null);
跟
XMLHTTP.send();
不要发送带有.send()
的null
Make it
XMLHttp.send()