0

我正在尝试使用 jquery 从 youtube api 获取一些视频数据和搜索结果数据。由于某种原因,我拥有的代码没有发现任何错误。这是一个视频 id 格式错误的jsFiddle。当我在控制台中对其进行测试时,这会返回一个错误,但由于某种原因,我的代码无法正常工作。我最初尝试使用 getJson 和那里的错误处理方法,但没有奏效。

我是 jquery 和 ajax 的新手,特别是所以我能得到的所有帮助都将不胜感激!

这是我的代码(在 jsFiddle 中是一样的)。

$.ajax({
    url: 'https://gdata.youtube.com/feeds/api/videos?category=dogs&orderby=published&alt=json&callback=?&max-results=5',
    //contentType: "application/json; charset=utf-8",
    dataType: 'json',
    success: function(data) {
        $.each(data.feed.entry, function(i, item) {
            var title = item['title']['$t'];
            var video = item['id']['$t'];
            var video = video.replace('http://gdata.youtube.com/feeds/api/videos/', 'http://www.youtube.com/watch?v=');
            var videoID = video.replace('http://www.youtube.com/watch?v=', '');
            $.ajax({
                url: 'https://gdata.youtube.com/feeds/api/videos/' + videoID + 'MALFORMEDID?v=2&alt=json&callback=?',
                //contentType: "application/json; charset=utf-8",
                dataType: 'json',
                success: function(videoData) {
                    alert(title);
                },
                ajaxError: function(e) {
                    alert("could not find youtube vid");
                }
            });
        });
    },
    error: function(e) {
        alert("oh no!");
    }
});​
4

1 回答 1

0

尝试

error: function(e) {

代替

ajaxError: function(e) { 

编辑:

执行 jsonp 时似乎不会调用错误回调。见手册。

http://api.jquery.com/jQuery.ajax/

您可能想改用 getJSON。

http://api.jquery.com/jQuery.getJSON/

于 2012-08-18T00:05:11.957 回答