我看了this answer
我这样做了:
function countryPage() {
$.ajax({
url: "https://en.wikipedia.org/w/api.php?action=parse&disablelimitreport=true&format=json&prop=text|langlinks&noimages=true&mobileformat=true&page="+ curTitle + "&callback=?",
contentType: "application/json; charset=utf-8",
dataType: "jsonp",
success: countryPageSuccess
});
}
function countryPageSuccess(counterObject, data) {
$.each(data, function(i, item) {...
但如果我按照那个答案做的话
$.each(JSON.parse(data), function(i, item) {
我得到了
未捕获的SyntaxError:位置1的JSON中的意外标记o
答案 0 :(得分:2)
它已经是一个JSON对象了。你不能再解析它了。
接收HTTP错误代码,在success
旁边提供错误回调函数,在下面显示我的代码。
function countryPage() {
$.ajax({
url: "https://en.wikipedia.org/w/api.php?action=parse&disablelimitreport=true&format=json&prop=text|langlinks&noimages=true&mobileformat=true&page=1&callback=?",
contentType: "application/json; charset=utf-8",
dataType: "jsonp",
success: countryPageSuccess,
error: function(jqXHR, textStatus, errorThrown) {
alert(jqXHR.status);
alert(textStatus);
alert(errorThrown);
}
});
}
function countryPageSuccess(data, result) {
$.each(data, function(i, item) {
console.log(item);
});
}
countryPage();

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
&#13;