2

当我向文件发出 HEAD 请求时,我得到了 ETAG 标头,如下所示:

ETag:“49a81-3f-4c049ee89a31b”

在这第一部分是 Inode 其他字段是什么

谁能告诉我。提前致谢

4

2 回答 2

1

据我所知,ETag 只是任何字符串。

如果您的浏览器与服务器上的匹配,您将收到一条 304 消息,未更改,如果不是,您将收到 200 以及新版本。

实际上,不同的实现可能会添加 Inode 或日期或任何东西。

我个人使用版本号来强制在我们更新应用程序时加载新的 js 脚本版本。

ETag 上的其他帖子:
HTTP:
为 ETag 生成 ETag 标头语法?

于 2012-05-18T08:06:40.217 回答
1

从维基百科我得到了这个信息:

ETag 是由 Web 服务器分配给在 URL 中找到的特定版本资源的不透明标识符。如果该 URL 上的资源内容发生变化,则会分配一个新的不同的 ETag。以这种方式使用 ETag 类似于指纹,可以快速比较它们以确定资源的两个版本是否相同。

比较 ETag 仅对一个 URL 有意义——从不同 URL 获得的资源的 ETag 可能相等,也可能不相等。因此,从它们的比较中无法推断出任何意义。

据我所知,etag 用于检查文件自下载后是否已被修改。

在您的 Etag 中,这些部分可能表示:可以使用 inode-file_size-last_modified_time。我不确定。

而且大卫的帖子有更多的信息。也跟着那个。这些信息真的很好而且很有用。

于 2012-05-18T08:43:24.417 回答