Pac*_*ier 24 etag http http-headers
Redbot报告我的网页包含无效标题:
ETag标头的语法无效.
我的标题设置为:
ETag: 4ae413bd
Run Code Online (Sandbox Code Playgroud)
为什么无效?
ETag的语法是什么?
Pac*_*ier 31
试试ETag: "4ae413bd"
.ETag的值必须遵循ABNF形式:
entity-tag = [ weak ] opaque-tag
weak = "W/"
opaque-tag = quoted-string
quoted-string = ( <"> *(qdtext | quoted-pair ) <"> )
qdtext = <any TEXT except <">>
quoted-pair = "\" CHAR
CHAR = <any US-ASCII character (octets 0 - 127)>
TEXT = <any OCTET except CTLs, but including LWS>
OCTET = <any 8-bit sequence of data>
LWS = [CRLF] 1*( SP | HT )
CTL = <any US-ASCII control character (octets 0 - 31) and DEL (127)>
CRLF = CR LF
CR = <US-ASCII CR, carriage return (13)>
LF = <US-ASCII LF, linefeed (10)>
SP = <US-ASCII SP, space (32)>
HT = <US-ASCII HT, horizontal-tab (9)>
Run Code Online (Sandbox Code Playgroud)
,这基本上([wW]/)?"([^"]|\\")*"
是常规正则表达式.
请注意这两个"\"
和"/"
是ETag的有效值.
Mar*_*cny 11
正如Arnaud所提到的,请确保您已引用该值.
更换
new EntityTagHeaderValue("0");
Run Code Online (Sandbox Code Playgroud)
同
new EntityTagHeaderValue("\"0\"");
Run Code Online (Sandbox Code Playgroud)
"ETag是由Web服务器分配给在URL处找到的特定资源版本的不透明标识符 ".这意味着它几乎可以是任何东西.
问题可能是语法,使用:
ETag: "4ae413bd"
Run Code Online (Sandbox Code Playgroud)