【发布时间】: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