2014-05-07 6 views
11

Sto usando questo URL:Restituisce la durata mentre elenchi playlistItems?

https://www.googleapis.com/youtube/v3/playlistItems? 
    playlistId=FLFe0SGNFqZ9E2owO5ZDZpeg& 
    part=snippet,contentDetails,status 

per andare a prendere playlistItems YouTube.

Ho incluso tutti i part Sono interessato a, tuttavia non ho trovato alcun modo per restituire il duration dell'articolo.

https://developers.google.com/youtube/v3/docs/playlistItems/list

è possibile?

momento che sto tornando solo un oggetto simile a questo:

{ 
    "status": { 
    "privacyStatus": "public" 
    }, 
    "kind": "youtube#playlistItem", 
    "contentDetails": { 
    "videoId": "tL-Ba86UhoE" 
    }, 
    "snippet": { 
    "playlistId": "FLFe0SGeFqZ9E2owO5ZDZpwg", 
    "thumbnails": { 
     "default": { 
     "url": "https://i1.ytimg.com/vi/tL-BA86Uhoh/default.jpg", 
     "width": 120, 
     "height": 90 
     }, 
     "high": { 
     "url": "https://i1.ytimg.com/vi/tL-BA86Uhoh/hqdefault.jpg", 
     "width": 480, 
     "height": 360 
     }, 
     "medium": { 
     "url": "https://i1.ytimg.com/vi/tL-BA86Uhoh/mqdefault.jpg", 
     "width": 320, 
     "height": 180 
     } 
    }, 
    "title": "Music Video", 
    "resourceId": { 
     "kind": "youtube#video", 
     "videoId": "tL-BA86Uhoh" 
    }, 
    "channelId": "UCFe0SGNFqZ9E2owO5ZDZpwg", 
    "publishedAt": "2013-07-06T18:41:43.000Z", 
    "channelTitle": "channeltitle", 
    "position": 0, 
    "description": "Video for" 
    }, 
    "etag": "\"ePFRUfYBkeQ2ncpP9OLHvB0fDw4/CJiCG6tvFw4quQlzJq3gTrhvCNo\"", 
    "id": "FL-fX6VqgtTfCJWKNE4aVRODKSrRgEdGvw" 
}, 

senza alcuna indicazione tempo a tutti. Preferisco evitare di inondare YouTube con la richiesta di restituire la durata di un singolo video.

risposta

0

utilizzare questa funzione: [utilizzato solo con Youtube Api v3]

Browser:

si deve fare un'altra richiesta di http utilizzando:

https://www.googleapis.com/youtube/v3/videos?id= {Video id} & part = contentDetails & chiave = {chiave api}

e

contentDetails

troverete la durata

Php:

function getDuration($apiKey,$video_id){   
    $link='https://www.googleapis.com/youtube/v3/videos?id='.$video_id.'&part=contentDetails&key='.$apiKey; 
    $data = json_decode(file_get_contents($link),true); 
    $duration = $data['items'][0]['contentDetails']['duration']; 
    return $duration; 
} 
2

Usa link come questo per ottenere la durata per molti video:

https://www.googleapis.com/youtube/v3/videos?part=contentDetails&id=idFirst,idSecond&key=YOUR_API_KEY 
+0

La domanda è stata chiesta per playlistItems api. Possiamo passare più ID se dobbiamo creare un elenco da una playlist di youtube. –