.NET YouTube数据API.检测是否已禁用嵌入



我正在创建一个小窗口表单应用程序,该应用程序将根据查询返回视频列表。我正在使用此链接https://developers.google.com/youtube/v3/code_samples/dotnet一切正常工作,除了问题的问题是,如果所有者被某些视频的所有者禁用了嵌入,那么我会在尝试播放的同时遇到错误视频:"在YouTube上观看此视频。视频Onwer禁用了其他网站上的播放"。

所以我有两个问题

1)有什么方法可以播放该视频?

2)如果第一个问题的anwser是否,那么我如何过滤那些被其所有者禁用的嵌入的视频。意味着我不想在列表中添加这些视频。

谢谢。

根据官方文档,每个视频都有status.embeddable属性,您可以在代码中检查。

status.embedabble,无论使用什么语言,都是随时称为视频参考中使用的一种方法。

因此,我建议例如使用方法列表。为了证明,我将YouTube视频放在此视频中。清单try-it和将"状态"放置为部分参数。

真实,我得到了嵌入式状态:

"items": [
    {
      "kind": "youtube#video",
      "etag": ""7991kDR-QPaa9r0pePmDjBEa2h8/7NFYOO88j54fU9aKM8MsjN4zPro"",
      "id": "kIBdpFJyFkc",
      "status": {
        "uploadStatus": "processed",
        "privacyStatus": "public",
        "license": "youtube",
        "embeddable": true,
        "publicStatsViewable": true
      }
    }
  ]

感谢所有答案。探索文档后,我终于找到了过滤那些被所有者禁用嵌入的视频的解决方案。

youtubeservice.search.list方法的Videoembeddable属性期望Google.apis.youtube.v3.searchResource.listrequest.videoembeddabledableEnum可以做到这一点。

var searchListRequest = youtubeService.Search.List("snippet");
            searchListRequest.Q = ""; // Replace with your search term.
            searchListRequest.MaxResults = 50;
            searchListRequest.Type = "video";
            searchListRequest.VideoEmbeddable = SearchResource.ListRequest.VideoEmbeddableEnum.True__;

指定类型的"视频"仅返回所有视频,播放列表和频道的视频。

相关内容

  • 没有找到相关文章

最新更新