Javascript 将json提要数据显示为html
我想显示从以下url到html页面的数据: (显示来自facebook的最新帖子) 这里是迄今为止的代码:Javascript 将json提要数据显示为html,javascript,html,json,facebook,facebook-graph-api,Javascript,Html,Json,Facebook,Facebook Graph Api,我想显示从以下url到html页面的数据: (显示来自facebook的最新帖子) 这里是迄今为止的代码: <!DOCTYPE html> <html> <body> <h1>Customers</h1> <div id="id01"></div> <script> var xmlhttp = new XMLHttpRequest(); var url = "https://graph.fac
<!DOCTYPE html>
<html>
<body>
<h1>Customers</h1>
<div id="id01"></div>
<script>
var xmlhttp = new XMLHttpRequest();
var url = "https://graph.facebook.com/1041049395967347/posts?access_token=616050815226195|bqcTMDgKwdzdDyOeD8uyIKEYZlo";
xmlhttp.open("GET", url, true);
xmlhttp.send();
function myFunction(response) {
var arr = JSON.parse(response);
var i;
var out = "<table>";
for(i = 0; i < arr.length; i++) {
out += "<tr><td>" +
arr[i].story +
"</td><td>" +
arr[i].story +
"</td><td>" +
arr[i].created_time +
"</td></tr>";
}
out += "</table>";
document.getElementById("id01").innerHTML = out;
}
</script>
</body>
</html>
客户
var xmlhttp=new XMLHttpRequest();
变量url=”https://graph.facebook.com/1041049395967347/posts?access_token=616050815226195|BQCTMDGWDZDDYOED8UYKEYZLO”;
open(“GET”,url,true);
xmlhttp.send();
功能myFunction(响应){
var arr=JSON.parse(响应);
var i;
var out=“”;
对于(i=0;i
但我没有得到任何结果
如果我遗漏了什么,有人能帮忙吗
谢谢试试这个
$.getJSON(“https://graph.facebook.com/1041049395967347/posts?access_token=616050815226195|BQCTMDGWDZDDYOED8UYIKEYZLO“,null,函数(结果){
var out=“”;
对于(i=0;i
arr
不是一个数组,而是一个对象,包含元素数据和分页
,因此在元素上迭代不起作用。相反,您应该使用arr.length:
var xmlhttp = new XMLHttpRequest();
var url = "https://graph.facebook.com/1041049395967347/postsaccess_token=616050815226195|bqcTMDgKwdzdDyOeD8uyIKEYZlo";
xmlhttp.onreadystatechange=function() {
if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
myFunction(xmlhttp.responseText);
}
}
xmlhttp.open("GET", url, true);
xmlhttp.send();
function myFunction(response) {
var arr = JSON.parse(response);
var i;
var out = "<table>";
for (i = 0; i < arr.data.length; i++) {
out += "<tr><td>" +
arr.data[i].story +
"</td><td>" +
arr.data[i].story +
"</td><td>" +
arr.data[i].created_time +
"</td></tr>";
}
out += "</table>";
$("#divContent").html(out);
}
var xmlhttp=new XMLHttpRequest();
变量url=”https://graph.facebook.com/1041049395967347/postsaccess_token=616050815226195|BQCTMDGWDZDDYOED8UYKEYZLO”;
xmlhttp.onreadystatechange=函数(){
if(xmlhttp.readyState==4&&xmlhttp.status==200){
myFunction(xmlhttp.responseText);
}
}
open(“GET”,url,true);
xmlhttp.send();
功能myFunction(响应){
var arr=JSON.parse(响应);
var i;
var out=“”;
对于(i=0;i
调用的是myFunction
吗?你是不是从facebook得到了一张200元的回执?是的,document.getElementById(“id01”).innerHTML=out;将获得输出,如果我更改链接“”而不是获得输出,但不使用facebook graph url,请检查我是否遵循此示例,因为我对jsonI不太熟悉,还应指出您的代码中存在XSS漏洞。Facebook不保证它能逃过它返回的数据,而你正在清理你的输出。有关如何缓解此安全问题的更多信息,我建议您在本文中深入探讨DOM构建:查看您是否从facebook获得200。你可能会得到401或什么,因此,myFunction
没有被调用。我投票支持你解释一下答案,而不仅仅是修改代码。谢谢你的解释。我希望我能将多个问题标记为答案。对于希望操作系统看到完整代码的任何人,我已经用最终工作代码更新了我的问题。谢谢,我不认为更新这个问题使其生效是个好主意。未来的读者不会再认识到这个问题。如果你能帮忙,我还有一个小问题,我想把facebook的创建时间显示为一个小日期,例如2016-04-06T02:01:21+0000到“2016-04-06 02:01:21”或“2小时前”。有什么办法吗?@Joachimschirmacher将我的问题更新回以前的问题。再次感谢。