与维基媒体的JSONP请求



我正在使用jsonp向维基媒体api成功功能发出ajax请求,但错误处理不起作用。

var wikiRequestTimeout = setTimeout(function() {
self.wikiData = "<p>No Articles Found</p>";
}, 3000);
var wikiUrl = 'https://en.wikipedia.org/w/api.php?action=opensearch&search= ' + this.title + '&format=json&callback=wikiCallback';
$.ajax({
url: wikiUrl,
dataType: "jsonp",
success: function(response) {
var articleList = response[1];
for (var i = 0; i < articleList.length; i++) {
var articleStr = articleList[i];
var url = 'http://en.wikipedia.org/wiki/' + articleStr;
self.wikiData = '<li><a href="' + url + '">' + articleStr + '</a></li>';
};
clearTimeout(wikiRequestTimeout);
}
});
};

若要获取失败的 AJAX 请求的错误处理,需要指定错误回调函数。 http://api.jquery.com/jquery.ajax/

例如:

$.ajax({
url: wikiUrl,
dataType: "jsonp",
success: function(response) {
...
},
error: function(jqXHR, textStatus, errorThrown) {
// your error handling goes here
}
});

最新更新