Запрос JSONP с Викимедиа - PullRequest
       6

Запрос JSONP с Викимедиа

0 голосов
/ 19 сентября 2018

Я делаю ajax-запрос, используя jsonp, чтобы функция успеха API Викимедиа работала, но обработка ошибок не работает.

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);

        }
    });
};

1 Ответ

0 голосов
/ 19 сентября 2018

Чтобы получить обработку ошибок при сбое 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
    }
});
...