如何从YouTube频道ID获取用户的Google+ ID

时间:2016-03-06 04:53:13

标签: youtube youtube-api google-plus google-oauth youtube-data-api

我正在运行一项服务,人们可以使用oauth 2.0连接他们的Google帐户,并且通过YouTube权限,我可以管理他们的频道/访问他们的YouTube频道ID。

然而,我的问题是你是否可以倒退。即,您如何从给定的YouTube频道ID确定Google帐户所有者?

3 个答案:

答案 0 :(得分:2)

googlePlusUserId现已弃用

https://developers.google.com/youtube/v3/docs/channels#properties

contentDetails.googlePlusUserId不再作为contentDetails部分的一部分存在。

基于他们change-log

的摘录
  

2016年6月13日

     

此更新包含以下更改:

     
      
  • channel资源的contentDetails.googlePlusUserId属性具有   已被弃用。以前,该物业只有在   频道已与Google+个人资料相关联。以下   弃用,该属性将不再包含在任何channel中   资源。
  •   
  • comment资源的snippet.authorGoogleplusProfileUrl   属性已被弃用。以前,该物业只是   如果频道与Google+个人资料相关联,则会显示。   弃用后,该物业将不再包含在内   任何comment资源。
  •   
     

因为这些属性都不会   在弃用之后返回,两个属性都已删除   来自相应的资源文档。

答案 1 :(得分:1)

您可以通过YouTube API(v3)请求获取用户Google+ ID,例如:

<#list reportModel.affectedJars.iterator()>
    <p>Found some archives containing CVE vulnerabilities:</p>
    <#items as file>
       Something...
    </#items>
<#else>
    <p>No archives containing CVE vulnerabilities were found.</p>
</#list>

将返回:

https://www.googleapis.com/youtube/v3/channels?part=contentDetails&id={CHANNEL_ID}&key={YOUR_API_KEY}

答案 2 :(得分:1)

可能人们无法从YouTube API(v3)获取Google+ ID。但即使是频道所有者也没有创建google plus帐户,您可以使用XHR或curl提前知道频道HTML文档。

  1. 访问频道页。

      

    https://www.youtube.com/channel/UCL8ZULXASCc1I_oaOT0NaOQ

  2. 从页面浏览器上的Developer工具中抓取Javascript对象。

      

    ytInitialData.metadata.channelMetadataRenderer.ownerUrls

         

    [“http://www.youtube.com/user/googlechrome”,
      “https://plus.google.com/100585555255542998765”]

  3. 第二个是google plus地址,而且号码是Google+ ID。如有必要,您可以在频道页面上从 ytInitialData 获取更多信息。

  4. 一个例子。 https://www.youtube.com/channel/UCiQPrVjbUlZBWY0fVtvpoKg

    关于该频道ID(UCiQPrVjbUlZBWY0fVtvpoKg)您无法从YouTube API(v3)获取Google+ ID,但是当您可以访问html文档或阅读时,您可以直接在频道上获取Google+ ID。即使频道所有者未创建google plus帐户,Youtube也已将Google+ ID统一起来。