Si la liste de lecture est trop grande, la réponse peut échouer. Brightcove fournit la pagination et le nombre total de pages pour chaque élément json. Appelez donc la première page et obtenez le nombre total de pages. Itérez toutes les pages, appelez chaque page et obtenez une liste de lecture. Et concaténer chaque playlist dans un tableau qui est la playlist.
var dataPageSize = 10;
var brightcoveAPiUrl ="https://api.brightcove.com/services/library";
var callBrightcove= function(data){
return $.ajax({
url: brightcoveAPiUrl,
dataType:'jsonp',
data:data
)}
};
function getPlaylist(pageNumber) {
return callBrightcove({
"command": "find_all_playlists",
"playlist_fields": "id,name,filterTags",
"page_number": pageNumber,
"page_size": dataPageSize,
"get_item_count": "true",
"token": brightcoveReadToken
}
);
}
function getAllPlaylist() {
var startPageNumber = 0;
getPlaylist(startPageNumber).done(function (data) {
var dataArr = [data];
var playlistArr = [], requests = [], i;
var requestCount = parseInt(data.total_count/dataPageSize);
// Deferred Requests Array
for (i = 0; i < requestCount; i++) {
requests.push(getPlaylist(i + 1).done(function (data) {
dataArr = dataArr.concat(data);
}))
}
}