Express 为什么ETag需要用双引号括起来?

Express 为什么ETag需要用双引号括起来?,express,http,caching,header,etag,Express,Http,Caching,Header,Etag,根据and,ETag值需要用双引号括起来。 当我使用CURL和Accept-Encoding头发出请求时,如果ETag没有用双引号括起来,我就不会在响应头中收到ETag 我很好奇为什么ETag规范要求它们用双引号括起来?没有书面证据,很难说为什么有人做了什么 但是,我们可以说,ETag头的值除了实体标记本身之外还包括元数据。具体来说,当值以字符串W/开头时,意味着应将以下实体标记视为弱标记 因此,必须有某种方法来区分值和元数据。有无限多的替代解决方案。例如,它们可以省略引号,但是元数据必须有一个

根据and,ETag值需要用双引号括起来。 当我使用CURL和Accept-Encoding头发出请求时,如果ETag没有用双引号括起来,我就不会在响应头中收到ETag


我很好奇为什么ETag规范要求它们用双引号括起来?

没有书面证据,很难说为什么有人做了什么

但是,我们可以说,
ETag
头的值除了实体标记本身之外还包括元数据。具体来说,当值以字符串
W/
开头时,意味着应将以下实体标记视为弱标记

因此,必须有某种方法来区分值和元数据。有无限多的替代解决方案。例如,它们可以省略引号,但是元数据必须有一个神奇的字符序列,并且可能有一些转义机制,用于实体标记碰巧包含这些字符


标准中采用的方法简单易读,使用熟悉的定界字符,并且解析速度快。事实上,我们有一个线索,即最后一部分很重要,因为没有转义序列(这意味着
本身不允许出现在标记的内部部分)。

学究式地说:值不包含在引号中-引号是值的一部分。