首页 > 解决方案 > \PlaylistItems:list API 在删除视频时返回少于 totalResults

问题描述

播放列表包含已删除视频的响应"GET https://www.googleapis.com/youtube/v3/playlistItems"将返回数组中缺少的项目,检查了错误页面,但在这种情况下似乎没有返回错误。

播放列表编号:PLn0Hg2TufJCmcAxBFzk8z28M7bph-TV2L

已删除 Videoid:_cXqnTRHpZU

回复:

/**
 * API response
 */
 {
    "kind": "youtube#playlistItemListResponse",
    "etag": "\"DuHzAJ-eQIiCIp7p4ldoVcVAOeY/T8BMpwombSYE5-LT4FpqCHDEwUQ\"",
    "pageInfo": {
      "totalResults": 10,
      "resultsPerPage": 50
    },
    "items": [
      {
        "kind": "youtube#playlistItem",
        "etag": "\"DuHzAJ-eQIiCIp7p4ldoVcVAOeY/4rqnSq9-GjuC3jGefwsyaa5CBvg\"",
        "id": "UExuMEhnMlR1ZkpDbWNBeEJGems4ejI4TTdicGgtVFYyTC41MjE1MkI0OTQ2QzJGNzNG",
        "contentDetails": {
          "videoId": "ob6ISU-f1ho",
          "videoPublishedAt": "2011-05-01T16:25:52.000Z"
        }
      },
      {
        "kind": "youtube#playlistItem",
        "etag": "\"DuHzAJ-eQIiCIp7p4ldoVcVAOeY/RFwjMeMjCTaRZUDphrJCA7UUBkE\"",
        "id": "UExuMEhnMlR1ZkpDbWNBeEJGems4ejI4TTdicGgtVFYyTC41MzJCQjBCNDIyRkJDN0VD",
        "contentDetails": {
          "videoId": "CGRf2Mpj8Yc",
          "videoPublishedAt": "2009-09-27T07:59:37.000Z"
        }
      },
      {
        "kind": "youtube#playlistItem",
        "etag": "\"DuHzAJ-eQIiCIp7p4ldoVcVAOeY/iUGZwVKJfLxCV-8Bo2riBnbGl_c\"",
        "id": "UExuMEhnMlR1ZkpDbWNBeEJGems4ejI4TTdicGgtVFYyTC5DQUNERDQ2NkIzRUQxNTY1",
        "contentDetails": {
          "videoId": "hEhYol0gEg4",
          "videoPublishedAt": "2014-03-28T17:44:11.000Z"
        }
      },
      {
        "kind": "youtube#playlistItem",
        "etag": "\"DuHzAJ-eQIiCIp7p4ldoVcVAOeY/u_C1CEJaTi1zTsOIkXif0D5q1b8\"",
        "id": "UExuMEhnMlR1ZkpDbWNBeEJGems4ejI4TTdicGgtVFYyTC45NDk1REZENzhEMzU5MDQz",
        "contentDetails": {
          "videoId": "wqv6r02ndLo",
          "videoPublishedAt": "2013-10-02T10:23:13.000Z"
        }
      },
      {
        "kind": "youtube#playlistItem",
        "etag": "\"DuHzAJ-eQIiCIp7p4ldoVcVAOeY/PMFK40fcEeXgwuNE3gdtDX4rE5M\"",
        "id": "UExuMEhnMlR1ZkpDbWNBeEJGems4ejI4TTdicGgtVFYyTC5GNjNDRDREMDQxOThCMDQ2",
        "contentDetails": {
          "videoId": "eRr6TibE9G0",
          "videoPublishedAt": "2014-05-14T11:59:06.000Z"
        }
      },
      {
        "kind": "youtube#playlistItem",
        "etag": "\"DuHzAJ-eQIiCIp7p4ldoVcVAOeY/uYJMJTAtsEIisl_vothDzAtUmXc\"",
        "id": "UExuMEhnMlR1ZkpDbWNBeEJGems4ejI4TTdicGgtVFYyTC40NzZCMERDMjVEN0RFRThB",
        "contentDetails": {
          "videoId": "JISlUIUY3sA",
          "videoPublishedAt": "2013-05-07T17:57:02.000Z"
        }
      },
      {
        "kind": "youtube#playlistItem",
        "etag": "\"DuHzAJ-eQIiCIp7p4ldoVcVAOeY/fnfbDo29xDX_41j7WwAHlOWCRXs\"",
        "id": "UExuMEhnMlR1ZkpDbWNBeEJGems4ejI4TTdicGgtVFYyTC5EMEEwRUY5M0RDRTU3NDJC",
        "contentDetails": {
          "videoId": "rvXbj0jh2lA",
          "videoPublishedAt": "2014-05-28T17:55:37.000Z"
        }
      },
      {
        "kind": "youtube#playlistItem",
        "etag": "\"DuHzAJ-eQIiCIp7p4ldoVcVAOeY/MtvoZWwjFDcxXIlop7Nwu0hgnhI\"",
        "id": "UExuMEhnMlR1ZkpDbWNBeEJGems4ejI4TTdicGgtVFYyTC45ODRDNTg0QjA4NkFBNkQy",
        "contentDetails": {
          "videoId": "ExEP-ZhT3sQ",
          "videoPublishedAt": "2013-11-08T17:51:22.000Z"
        }
      },
      {
        "kind": "youtube#playlistItem",
        "etag": "\"DuHzAJ-eQIiCIp7p4ldoVcVAOeY/VP-V_aDLbLQO7lHFj7TsZBDYj1U\"",
        "id": "UExuMEhnMlR1ZkpDbWNBeEJGems4ejI4TTdicGgtVFYyTC4zMDg5MkQ5MEVDMEM1NTg2",
        "contentDetails": {
          "videoId": "lWkhXQJMPCQ",
          "videoPublishedAt": "2013-01-21T21:28:51.000Z"
        }
      }
    ]
  }

在我的情况下,“totalResults”:10,但是该数组返回 9 个项目。根据我的测试产生错误的唯一方法

GET https://www.googleapis.com/youtube/v3/playlistItems?part=contentDetails%2Cstatus&maxResults=50&playlistId=PLn0Hg2TufJCmcAxBFzk8z28M7bph-TV2L&videoId=_cXqnTRHpZU&key={YOUR_API_KEY}

回复:

404

- Show headers -

{
 "error": {
  "errors": [
   {
    "domain": "youtube.playlistItem",
    "reason": "videoNotFound",
    "message": "Video not found.",
    "locationType": "parameter",
    "location": "videoId"
   }
  ],
  "code": 404,
  "message": "Video not found."
 }
}

这背后的目的是在特定播放列表中检测这些已删除的视频,然后将其删除。

标签: javascriptyoutubeyoutube-api

解决方案


推荐阅读