ios - 如何在 YouTube Search API v3 中获取内容详细信息? ( swift )

标签 ios json swift search youtube

我用它来获取视频的信息,例如标题和图像。

var urlString = "https://www.googleapis.com/youtube/v3/search?part=snippet&fields=items(id,snippet(title,channelTitle,thumbnails))&order=viewCount&q=\(text)&type=video&maxResults=25&key=\(apiKey)"

上面的 URL 将返回 JSON。

     ["items": <__NSArrayI 0x1c41b03e0>(
{
    id =     {
        kind = "youtube#video";
        videoId = n3T3K2MHNjM;
    };
    snippet =     {
        channelTitle = "Ty Dolla $ign";
        thumbnails =         {
            default =             {
                height = 90;
                url = "https://i.ytimg.com/vi/n3T3K2MHNjM/default.jpg";
                width = 120;
            };
            high =             {
                height = 360;
                url = "https://i.ytimg.com/vi/n3T3K2MHNjM/hqdefault.jpg";
                width = 480;
            };
            medium =             {
                height = 180;
                url = "https://i.ytimg.com/vi/n3T3K2MHNjM/mqdefault.jpg";
                width = 320;
            };
        };
        title = "Ty Dolla $ign & Future - Darkside feat. Kiiara (from Bright: The Album) [Official Audio]";
    };
},

但是 JSON 中没有内容详细信息,我想访问内容详细信息,因为它包含我需要的视频的持续时间。我曾尝试通过将 contentDetails 插入 URL 来使用这样的 url 进行访问,但它不起作用。

var urlString = "https://www.googleapis.com/youtube/v3/search?part=snippet&fields=items(id,contentDetails,snippet(title,channelTitle,thumbnails))&order=viewCount&q=\(text)&type=video&maxResults=25&key=\(apiKey)"

我怎样才能检索内容详细信息?

最佳答案

搜索API v3没有搜索API中的时长,您需要使用视频API来获取视频信息。

var urlString = "https://www.googleapis.com/youtube/v3/videos?key=\(apiKey)&part=contentDetails&id="

使用此 URL,然后在后面添加 id,如 U4_Os5LNVjg、s23mnsidmm 为多个 ID,然后使用它来转换 YouTube 的持续时间格式 How to Convert duration form youtube api in swift?

关于ios - 如何在 YouTube Search API v3 中获取内容详细信息? ( swift ),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47277259/

相关文章:

ios - 如何测试 RxSwift Observable.interval 进度

iphone - 仪器,目标运行失败 : Remote exception encountered : 'Failed to get task for pid'

java - 使用 Jackson 将 JSON 反序列化为 ArrayList<POJO>

ios - WKInterfaceTable 渲染问题。滚动条和最后一行都被切断

ios - RubyMotion 和指针

javascript - 在 Ajax 请求中使用缓存和非缓存 JSON

javascript - 从 package.json 运行 Node.js 命令

ios - 数组数据在 swift 4 的 TableView 中重复

swift - Text ("") 和 Text(verbatim : "") initializers in SwiftUI 之间的区别

ios - GoogleMobileAds sdk 的奇怪行为