【问题标题】:E-Tag in http headerhttp 标头中的电子标签
【发布时间】:2012-05-18 07:30:13
【问题描述】:

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

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

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

谁能告诉我。提前致谢

【问题讨论】:

    标签: http-headers


    【解决方案1】:

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

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

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

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

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

    此外,大卫的帖子还有更多信息。也跟着那个。这些信息非常有用。

    【讨论】:

      【解决方案2】:

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

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

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

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

      ETag 上的其他帖子:
      HTTP: Generating ETag Header
      Syntax for ETag?

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2017-07-31
        • 2010-12-01
        • 2012-07-11
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多