मैं अवधि के अनुसार आदेश दिया गया प्लेलिस्ट के लिए YouTube API से पूछताछ करने के लिए एक छोटा जावास्क्रिप्ट प्रोग्राम बनाने की कोशिश कर रहा हूं। सब कुछ पूरी तरह से काम करता है, लेकिन ऑर्डरिंग पूरी प्लेलिस्ट के लिए जिम्मेदार नहीं है, केवल 25 नवीनतम वीडियो! यहाँ एक न्यूनतम काम करने example as a JSFiddle पूरा हो और यहां इसके बारे में जावास्क्रिप्ट हिस्सा है:यूट्यूब एपीआई 'ऑर्डरबी = अवधि' पूरी प्लेलिस्ट को संभालने में नहीं, केवल नवीनतम वीडियो
var playlistId = "UUAuUUnT6oDeKwE6v1NGQxug";
jQuery.getJSON(
"https://gdata.youtube.com/feeds/api/playlists/"+playlistId+"?v=2&orderby=duration&alt=json",
function(data) {
$.each(data.feed.entry, function(key, val) {
var title = val.title.$t;
var url = val.content.src;
var duration = val.media$group.yt$duration.seconds;
var minutes = Math.floor(duration/60);
var seconds = (duration % 60);
if(seconds < 10) seconds = "0"+seconds;
var newRow = $("<tr></tr>");
newRow.append("<td><a href='"+url+"'>"+title+"</a></td>");
newRow.append("<td class='dur'>"+minutes+":"+seconds+"</td>");
$("#videos").append(newRow);
});
}
);
मैं दोनों एक्सएमएल में यह कोशिश की है और JSON और मैं भी प्लेलिस्ट खोज के अलावा खोजें के अन्य प्रकार की कोशिश की है। एपीआई सॉर्ट होने के परिणामस्वरूप केवल परिणाम के नवीनतम वीडियो काफी व्यर्थ लगते हैं। मैं प्लेलिस्ट, या उस मामले के लिए किसी दिए गए उपयोगकर्ता द्वारा अपलोड किए गए लोगों के सबसे लंबे या सबसे कम वीडियो कैसे प्राप्त करूं?
आप परिणामों सर्वर साइड छँटाई कुछ भी छँटाई के बिना एक दर्जन या अधिक व्यक्ति प्रश्नों का जवाब दे रहे तुलना में एक समग्र सस्ता आपरेशन किया जाएगा लगता है कि ... निश्चित रूप से नहीं आदर्श है, जैसे आपने कहा था। – ZeroOne
@ ज़ीरोऑन, मैं सहमत हूं। मैं वास्तव में इस तर्क को समझ नहीं पा रहा हूं कि वे इसे इस तरह क्यों निष्पादित करेंगे। – JSuar
यह लिंक विषय पर थोड़ा और प्रकाश डाल सकता है। http://apiblog.youtube.com/2012/03/keeping-things-fresh.html – JSuar