gpt4 book ai didi

node.js - 如何在 YouTube API 中使用 ETag

转载 作者:太空宇宙 更新时间:2023-11-03 23:37:00 25 4
gpt4 key购买 nike

显然,我们可以根据 their documentation 中的以下语句,使用 ETags 来查看 channel /播放列表是否已更新。 :

when your application requests a stored resource again, it specifies the ETag associated with that resource. If the resource has changed, the API returns the modified resource and the ETag associated with that version of the resource. If the resource has not changed, the API returns an HTTP 304 response (Not Modified), which indicates that the resource has not changed.

但是我试图获取一个没有变化的 channel 数据,但刷新几次后,ETag 似乎跳转到不同的值!

最佳答案

您不能只是再次到达端点并比较 etag 值;相反,您必须发出请求,存储 etag 值,然后将该 etag 值传递给后续请求。您将在请求 header 中执行此操作...将 HTTP header “If-None-Match”设置为您的 etag 的值。如果没有任何变化,您将返回 304(而不是任何内容或元数据)。如果某些内容发生了变化,您将获得新的结果,并且您将获取新的 etag 并将其存储,而不是旧的。

Google API Client for Javascript 支持此 header ;当您创建gapi.client.request对象时,您将传入一个对象作为参数;该对象的参数之一是“headers”,您可以在其中将“If-None-Match”设置为等于您要检查的 etag。

(另请注意,有一个“If-Match” header ,它也可以与 etag 一起使用,只有当资源与您之前请求的资源相同时,它才会返回内容......可能用例并不多,但它存在并且受到支持。)

关于node.js - 如何在 YouTube API 中使用 ETag,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30898519/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com