1

私は現在Youtube APIを使用していますが、data is null理由がわかりません...

function get_youtube_info(youtubeID) {
    $.getJSON("http://gdata.youtube.com/feeds/api/videos/"+youtubeID+"?v=2&prettyprint=true&alt=jsonc", function(json){
            if (json.data.accessControl.embed == "allowed") {
                //do something...
            }
    });
}

$.ajax$.get$.postまたは何を使用できますか?

4

2 に答える 2

2

YouTubeはあなたの応答をキャッシュすることを期待しているようですので、304試してみてください

$.ajax({
 url:'http://gdata.youtube.com/feeds/api/videos/'+youtubeID+'?v=2&prettyprint=true&alt=jsonc',
 cache:false,
 dataType:'json',
 type:'GET',
 success: function(json){
            if (json.data.accessControl.embed == "allowed") {
            //do something...
        }
        if (json.data.accessControl.embed == "denied") {
            alert("not allow to embed");
          }
    },
 error: function() {alert("not found video");}
});
于 2012-11-08T11:41:30.530 に答える
0
function get_youtube_info(youtubeID) {
    $.getJSON("http://gdata.youtube.com/feeds/api/videos/"+youtubeID+"?v=2&prettyprint=true&alt=jsonc&myversion="+Math.floor(Math.random()*1000000)+"",function(json){
            if (json.data.accessControl.embed == "allowed") {
                //do something...
            }
            if (json.data.accessControl.embed == "denied") {
        alert("not allow to embed");
        }
    }).error(function(json) {
        alert("not found video");
    });
}

今、私はこのように使用します。新しいパラメータに乱数を追加して、「許可」や「拒否」などのjsonデータを埋め込みます

于 2012-11-08T12:01:26.717 に答える