我一直在尝试使用Youtube JavaScript API v3获得视频时长,这是我JS的相关部分:

var request = gapi.client.youtube.search.list({
            q: 'eminem',
            part: 'snippet'
    });

    request.execute(function(response)  {
        $('#results').empty()
        var srchItems = response.result.items;

        $.each(srchItems, function(index, item) {
            vidTitle = item.snippet.title;
            vidTime = item.contentDetails.duration;
            vidThumburl =  item.snippet.thumbnails.default.url;
            $('#results').append('<pre>' + vidTitle + vidTime +'</pre>');
        });
    });

问题出在vidTime = item.contentDetails.duration;中,控制台返回以下错误:



但是,我正在寻找在请求(See Here)中返回的JSON结构,它正在工作,而且我不知道为什么会收到此错误:(

我尝试将part更改为:part: snippet, contentDetails,但是由于此更改,我出现了更多错误...

那么,该如何解决呢?

编辑过

为了分析console.log(response);的返回,我可以看到contentDetails没有在数组中返回,但是如何获得视频时长?

最佳答案

您的请求仅包含以下部分:片段。您还必须包括contentDetails。

var request = gapi.client.youtube.search.list({
        q: 'eminem',
        part: 'snippet,contentDetails'
});

关于javascript - 使用Youtube JavaScript API v3获取视频时长(contentDetails),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32512675/

10-12 01:47