【问题标题】:YouTube Data API v3 does not have unique IDs for resourcesYouTube Data API v3 没有资源的唯一 ID
【发布时间】:2018-09-13 07:43:44
【问题描述】:

这让我感到困惑,似乎有点可笑。当我在 Data API 上执行两个不同的查询时(以 Activities List endpoint 上的示例请求作为概念证明),请求之间的资源 id 并不相同。

这是我第一次请求的活动资源:

{
    "kind": "youtube#activity",
    "etag": "\"RmznBCICv9YtgWaaa_nWDIH1_GM/uGfbHYfKHEFhxWYbbmVxyBbQvNk\"",
    "id": "VTE1MjI3NzQwODY5NDMzMzYyOTc5NjQ5Ng==",
    "snippet": {
        "publishedAt": "2018-04-03T16:48:06.000Z",
        "channelId": "UC_x5XG1OV2P6uZZ5FSM9Ttw",
        "title": "Google Summer of Code 2013 Mentor Summit",
        // ...
    }
    // ...
}

注意id 值,根据API documentation,它是“YouTube 用来唯一标识活动的 ID”。

这是我的第二个请求:

{
    "kind": "youtube#activity",
    "etag": "\"RmznBCICv9YtgWaaa_nWDIH1_GM/dzIxWbnYZ3xx-1zi2VQ0V_f5PII\"",
    "id": "VTE1MjI3NzQwODY5NDYzMDM0OTg5MDAwMA==",
    "snippet": {
        "publishedAt": "2018-04-03T16:48:06.000Z",
        "channelId": "UC_x5XG1OV2P6uZZ5FSM9Ttw",
        "title": "Google Summer of Code 2013 Mentor Summit",
        // ...
    }
    // ...
}

id 对于相同的资源是不同的。尽管前几个字符相同,但我尝试截断 id,但它对于所有资源仍然不是唯一的。

我想知道id 是否是唯一标识资源的事实上的方法。有没有人遇到过这个?这是正确的行为吗?如果 YouTube 提供的 id 不是这种方式,我如何唯一标识资源?我可以组合一个 hacky 解决方案,但这似乎不正确。

很想听听想法。

【问题讨论】:

    标签: youtube-api youtube-data-api


    【解决方案1】:

    我使用的解决方案是获取活动发布日期的哈希值和附加的频道 ID。这不适合我,但这是我采用的解决方案。

    【讨论】:

      猜你喜欢
      • 2019-08-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-04-14
      • 2013-09-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多