POST请求将YouTube视频添加到Swift中的播放列表

时间:2016-08-04 17:54:08

标签: swift youtube-data-api

我正在寻找一些初学者帮助,以实现将YouTube视频添加到个人手表后期播放列表中的功能。

我正在使用上一个示例中显示的请求结构:https://developers.google.com/youtube/v3/sample_requests。即part=snippet和请求正文:

{
 "snippet": {
  "playlistId": "WL",
  "resourceId": {
   "videoId": "a7SouU3ECpU",
   "kind": "youtube#video"
  },
  "position": 0
 }
}

我想知道如何将这个代码编码到Swift中,知道要添加到播放列表的videoId?

我使用GTLR和GTMOAuth2框架让OAuth工作。

1 个答案:

答案 0 :(得分:0)

使用GTLR框架将视频项添加到Watch Later播放列表实际上非常简单。

我的解决方案使用带有属性videoId

的自定义视频类
let playlistItem = GTLRYouTube_PlaylistItem()
playlistItem.snippet = GTLRYouTube_PlaylistItemSnippet()
playlistItem.snippet!.playlistId="WL"
let resourceId = GTLRYouTube_ResourceId()
resourceId.kind="youtube#video"
resourceId.videoId=video.videoId
playlistItem.snippet!.resourceId = resourceId
let query3 = GTLRYouTubeQuery_PlaylistItemsInsert.query(withObject: playlistItem, part: "snippet")
service.executeQuery(query3, delegate: self, didFinish: nil)

要在执行查询后添加选择器,只需替换最后一行代码中的nil即可。

如果您连续处理多个视频查询,则会出现问题,因此只需在执行每个查询后添加时间延迟。