uso specified food etags control cache http http-headers etag

specified - http cache



¿Sintaxis para ETag? (3)

Redbot informa que mi página web tiene un encabezado no válido:

La sintaxis del encabezado de ETag no es válida.

Mis encabezados están configurados para:

ETag: 4ae413bd

¿Por qué no es válido?

¿Cuál es la sintaxis de un ETag?


"Un ETag es un identificador opaco asignado por un servidor web a una versión específica de un recurso encontrado en una URL". Esto significa que puede ser casi cualquier cosa.

El problema es probablemente la sintaxis, use:

ETag: "4ae413bd"


Como mencionó Arnaud, asegúrese de haber citado el valor.

reemplazar

new EntityTagHeaderValue("0");

con

new EntityTagHeaderValue("/"0/"");


Pruebe ETag: "4ae413bd" . El valor de un ETag debe seguir el formulario 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)>

, que es básicamente ([wW]/)?"([^"]|//")*" en expresiones regulares .

Tenga en cuenta que tanto "/" como "/" son valores válidos para etags.

Referencias: section-14.19 , section-3.11 , section-2.2 .