ETag格式w3c

时间:2014-08-12 12:34:03

标签: http http-headers w3c etag

我们在服务器上使用ETag标头进行同步,它对应于实体' int version' DB中的字段。 根据w3c文档: http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html 例子:

  ETag: "xyzzy"
  ETag: W/"xyzzy"
  ETag: ""

这意味着ETag里面有双引号。 因此,如果我想将其发送给客户端,则应该像:

int version = 2;
response.setHeader(HttpHeaders.ETAG, String.format("\"%s\"", version));

或者:

 int version = 2;
 response.setHeader(HttpHeaders.ETAG, String.format("%s", version));

在第一种情况下,我得到:

HTTP/1.1 200 OK
...
ETag: 2

第二名:

HTTP/1.1 200 OK
...
ETag: "2"

哪种方式更符合w3c?

1 个答案:

答案 0 :(得分:3)

a)W3C并不重要。您正在查看由W3C托管的IETF RFC 2616的副本。并且RFC已经过时,您应该阅读RFC 7232(例如http://greenbytes.de/tech/webdav/rfc7232.html#header.etag)。

b)在你的例子中,第一个是不正确的,第二个是正确的。