【发布时间】:2020-12-13 21:13:27
【问题描述】:
我已于 2019 年 7 月 23 日在 Google's bug tracker 上提出了以下问题,如果 YouTube 的数据 API v3 中修复此问题,我从未得到答复。
问题在于,YouTube 数据 API v3 的当前 etag 实现不适用于 ChannelListResponse、PlaylistListResponse 和 PlaylistItemListResponse,因为 etag 在每次请求时都会更改,即使相应请求背后的数据没有更改。这使得无法缓存这些数据并减少 API 请求的数量。链接的 stackoverflow 答案解释了这种行为的原因可能是 API 在每个请求中以另一个顺序返回项目,因此设置了一个新的 etag。
如何重现:
- 点击this link查看etag
- 再次单击链接(多次),您会看到 etag 不时更改
这个 etag 行为在 PlaylistItemListResponse.Item 实体(实际上是一个视频)上正常工作,只要视频的数据没有改变,etag 就始终保持不变。因此,在 YouTube 数据 API v3 上处理 etag 的方式明显不同。
知道是否有解决方法或者此问题是否会在某一天得到解决?
【问题讨论】:
-
这些etag问题是否会被修复,只能由谷歌自己来回答。在我的 SO 经验中(比如过去两年),我从未遇到过承认自己受雇于 Google 和/或假设以 Google 的名义回答问题的 SO 用户。
-
在过去,Ibrahim Ulukaya 和 Jeff Posnick 这样的名字经常涉及与标签 youtube-api 和 youtube-data-api 有关的问题,同时公开假设他们在 YouTube/Google 中的位置。跨度>
-
是的,我明白你的意思。希望这将在 v4 中得到修复。对于 Google 而言,这对于减少繁重的 API 请求/负载量可能是一件大事。
-
这是 Google 跟踪器上的 my bug report。他们说它是固定的,但事实并非如此。易于重现。
-
然后,请坚持在该线程中添加评论,并附上重现该错误的具体示例。 (我碰巧来自 Google 工作人员的my insistence upon getting a plain wrong response 没有任何结果;但在您的情况下可能会有所不同。)
标签: youtube-api youtube-data-api