背景:
我想利用Etags(我认为这是接收到的数据的哈希值)进行验证。
Google Directory API让我确切地指定了必填字段,并随同etag一起发送。
问题:
这些etag在list和get操作之间有所不同。数据完全相同。我已经测试了用户和组织单位。我认为它们应该相同。 etag的用途是什么?
答案 0 :(得分:0)
根据此documentation,ETag是用于指定特定条目的特定版本的标识符。服务器将ETag附加到它发送给客户端的entry和feed元素上。当条目或提要更改时,其ETag也将更改。
资源版本控制(ETag)
有时您需要能够引用特定版本的 特定条目。
这在两种情况下尤其重要:
- 执行“条件检索”,其中您的客户端请求一个条目,并且服务器只有在自上次客户端请求该条目以来已对其进行更改的情况下,才发送该条目。
- 确保多个客户端不会无意间覆盖彼此的更改。如果客户端为条目指定了旧版本标识符,则Data API会通过进行更新和删除操作来失败。
Google Data API使用ETag(HTTP的标准部分)处理这两种情况。