我希望一切顺利,如果你能帮助我或重新指导我找一个类似的老帖子,我会感激不尽,因为我无法找到。
我尝试发起REST API请求,服务器将发送JSON响应。请求有效,但我无法读取JSON输出。状态始终返回0.
这是我的代码。
<script>
function loadDoc() {
var xhttp = new XMLHttpRequest();
xhttp.open("POST", "URL HERE", true);
xhttp.setRequestHeader("Content-type", "application/json")
xhttp.send();
var response = JSON.parse(xhttp.responseText);
document.getElementById("demo").innerHTML = response.Result;
}
</script>
我想打印这个JSON的结果:
{
Meta: {
Status: 'Success',
Debug: ''
},
Result: {
Count: 2584,
Error: [],
Info: [],
Skipped: [],
DuplicateResponseCount: 0,
DuplicateError: null
}
}
非常感谢。
答案 0 :(得分:1)
巴勃罗说。您正在使用异步。一个选项是使用get方法或只是将回调传递给函数。
function _post(url, callback) {
var xhttp = new XMLHttpRequest();
xhttp.open("POST", url, true);
xhttp.onload = function() {
if (xhttp.status === 200) callback(xhttp.responseText);
else callback("error");
};
xhttp.send();
return xhttp.responseText;
}
_post("url here", function callback(response) {
// you can access response in here.
console.log(response);
});
在PHP脚本上
<?php
header("Access-Control-Allow-Origin: *");