YouTube数据API v3-播放项返回PlayNotFound

YouTube数据API v3-播放项返回PlayNotFound,youtube,youtube-data-api,Youtube,Youtube Data Api,我已按照内部和其他地方的说明: 使用静态API密钥连接到v3 API 使用传统频道ID(例如“谷歌开发者”)获取频道上传的播放列表ID 使用该播放列表的PlayItems端点检索上载到该YouTube帐户的视频列表 前两个阶段工作正常,我可以获取频道/播放列表ID,但每次都返回playlinities(我已经用几个不同的YouTube帐户测试过了) 我一直在努力仔细检查拼写错误——我看不出请求有任何错误 有什么想法,或者有人能重现这个问题吗 示例API调用(使用谷歌开发者频道,如视频所示)-

我已按照内部和其他地方的说明:

  • 使用静态API密钥连接到v3 API
  • 使用传统频道ID(例如“谷歌开发者”)获取频道上传的播放列表ID
  • 使用该播放列表的PlayItems端点检索上载到该YouTube帐户的视频列表
前两个阶段工作正常,我可以获取频道/播放列表ID,但每次都返回
playlinities
(我已经用几个不同的YouTube帐户测试过了)

我一直在努力仔细检查拼写错误——我看不出请求有任何错误

有什么想法,或者有人能重现这个问题吗

示例API调用(使用谷歌开发者频道,如视频所示)-您需要测试:

答复:

{
 "kind": "youtube#channelListResponse",
 "etag": "\"IHLB7Mi__JPvvG2zLQWAg8l36UU/9Uu_LJKSiIBlJOBZoZLkKcjhUUE\"",
 "pageInfo": {
  "totalResults": 1,
  "resultsPerPage": 5
 },
 "items": [
  {
   "kind": "youtube#channel",
   "etag": "\"IHLB7Mi__JPvvG2zLQWAg8l36UU/JgZIwrlCnsd1wzjssCxaCFp8mRU\"",
   "id": "UC_x5XG1OV2P6uZZ5FSM9Ttw"
  }
 ]
}
{
  kind: "youtube#channelListResponse",
  etag: ""iDqJ1j7zKs4x3o3ZsFlBOwgWAHU/rGUGLTaUoy_huV1Qfc0wvulpr7M"",
  pageInfo: {
    totalResults: 1,
    resultsPerPage: 50
  },
  items: [
    {
      kind: "youtube#channel",
      etag: ""iDqJ1j7zKs4x3o3ZsFlBOwgWAHU/Il2dF5SRdky6_tqanN3hNuDyfxc"",
      id: "UC_x5XG1OV2P6uZZ5FSM9Ttw",
      contentDetails: {
        relatedPlaylists: {
          uploads: "UU_x5XG1OV2P6uZZ5FSM9Ttw"
        },
      googlePlusUserId: "111395306401981598462"
      }
    }
  ]
}
{
  kind: "youtube#playlistItemListResponse",
  etag: ""iDqJ1j7zKs4x3o3ZsFlBOwgWAHU/AqAMzBB7CuVjpCKtQDHbbIvjtMU"",
  nextPageToken: "CAEQAA",
  pageInfo: {
    totalResults: 3761,
    resultsPerPage: 1
  },
  items: [{
    kind: "youtube#playlistItem",
    etag: ""iDqJ1j7zKs4x3o3ZsFlBOwgWAHU/qjqde7mm3USo4TmUrxDN8KdbyaQ"",
    id: "UUj6hVp42BfAXGn9SkmnI_HudylmOycmdp",
    contentDetails: {
      videoId: "tjmRUgUca1g"
    }
  }]
}
正在尝试获取播放列表中的第一个视频:

注意:我生成了一个服务器密钥,因为它将在服务器上运行。但我正在一个浏览器中测试(IP地址被列为白名单)。这应该不会引起任何问题吧?(到目前为止没有身份验证错误。)

William, 您用作播放列表id的是频道id,要获得带有id的播放列表,您需要将contentDetails添加到part参数

https://www.googleapis.com/youtube/v3/channels?part=contentDetails&maxResults=50&forUsername=GoogleDevelopers&key=<APIKEY>
然后使用“UU_x5XG1OV2P6uZZ5FSM9Ttw”作为上传播放列表,以便下一次通话如下所示:

https://www.googleapis.com/youtube/v3/playlistItems?part=contentDetails&maxResults=1&playlistId=UU_x5XG1OV2P6uZZ5FSM9Ttw&key=<APIKEY>

嘿@William,就连我也面临着同样的问题。你能解决吗?@Adithya no-我最后做的是使用RSS提要:–我确实设法让v3数据API工作,以以下形式检索特定视频的详细信息:
{
  kind: "youtube#playlistItemListResponse",
  etag: ""iDqJ1j7zKs4x3o3ZsFlBOwgWAHU/AqAMzBB7CuVjpCKtQDHbbIvjtMU"",
  nextPageToken: "CAEQAA",
  pageInfo: {
    totalResults: 3761,
    resultsPerPage: 1
  },
  items: [{
    kind: "youtube#playlistItem",
    etag: ""iDqJ1j7zKs4x3o3ZsFlBOwgWAHU/qjqde7mm3USo4TmUrxDN8KdbyaQ"",
    id: "UUj6hVp42BfAXGn9SkmnI_HudylmOycmdp",
    contentDetails: {
      videoId: "tjmRUgUca1g"
    }
  }]
}