我想从此链接http://starlord.hackerearth.com/gamesext中读取数据。 我经历了https://developer.mozilla.org/en-US/docs/Learn/JavaScript/Objects/JSON,并能够从https://mdn.github.io/learning-area/javascript/oojs/json/superheroes.json获取数据。 尝试类似的方法从http://starlord.hackerearth.com/gamesext获取数据对我来说不起作用。 这是我尝试的方式:
var requestURL = 'http://starlord.hackerearth.com/gamesext';
var request = new XMLHttpRequest();
request.open('GET', requestURL);
request.responseType = 'json';
request.send();
request.onload = function() {
var games = request.response;
document.getElementById("para").innerHTML = "for check";//para is a paragraph id
fun1(games);
}
function fun1(jsonObj){
//getting first title
document.getElementById("para").innerHTML = jsonObj[0]["title"];
}
我想知道JSON中的数据以及如何获取它?
答案 0 :(得分:0)
尝试使用JSON.parse()
方法:
function fun1(jsonObj){
//getting first title
jsonObj = JSON.parse(jsonObj);
document.getElementById("para").innerHTML = jsonObj[0]["title"];
}
这会将有效的JSON转换为一个javascript对象,您可以在下面尝试进行访问。
答案 1 :(得分:0)
这对我来说很好:
var requestURL = 'http://starlord.hackerearth.com/gamesext';
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
console.log(xhttp.response[0].title) # LittleBigPlanet PS Vita
}
};
xhttp.open("GET", requestURL);
xhttp.responseType = 'json';
xhttp.send();
试试看!
答案 2 :(得分:0)
使用fetch
很简单。
下面是一个例子。
const url = 'https://mdn.github.io/learning-area/javascript/oojs/json/superheroes.json';
async function getData() {
const json = await (await fetch(url)).json();
console.log(json);
}
getData();
答案 3 :(得分:0)
只需将request.send();
放在您提供的所有代码之后。