A matching validator produces a Not Modified response and no body bytes.

highlighted = computed this step

The response is Not Modified

The status row says 304 Not Modified.

status=304\text{status}=304
Not Modified responseThe cache validation decision and response rows are recomputed from pinned data.Not Modified response - /logo.png validator "v7" -> 304 Not Modified, body 0 bytessectionnamevaluecheckrequest linemethodGETparsedrequest linepath/logo.pngparsedrequest lineversionHTTP/1.1parsedheaderHoststatic.exampleexactheaderIf-None-Match"v7"validatorresourcepath/logo.pngpinnedresourcecurrent ETag"v7"pinnedresourcebody bytes1280would send if changeddecisionvalidator"v7"from requestdecisioncurrent ETag"v7"from resourcedecisionmatchyessame tagdecisionresponse304 Not Modifiedskip bodydecisionsent body bytes0not sentstatusversionHTTP/1.1parsedstatusstatus304 Not Modifiednot modifiedheaderETag"v7"current tagheaderCache-Controlmax-age=60pinnedbodysent body bytes0skipped

The response repeats the tag

The response ETag row carries the same current tag shown in the resource row.

ETag repeated\text{ETag repeated}
Not Modified responseThe cache validation decision and response rows are recomputed from pinned data.Not Modified response - /logo.png validator "v7" -> 304 Not Modified, body 0 bytessectionnamevaluecheckrequest linemethodGETparsedrequest linepath/logo.pngparsedrequest lineversionHTTP/1.1parsedheaderHoststatic.exampleexactheaderIf-None-Match"v7"validatorresourcepath/logo.pngpinnedresourcecurrent ETag"v7"pinnedresourcebody bytes1280would send if changeddecisionvalidator"v7"from requestdecisioncurrent ETag"v7"from resourcedecisionmatchyessame tagdecisionresponse304 Not Modifiedskip bodydecisionsent body bytes0not sentstatusversionHTTP/1.1parsedstatusstatus304 Not Modifiednot modifiedheaderETag"v7"current tagheaderCache-Controlmax-age=60pinnedbodysent body bytes0skipped

No body is sent

The response rows show sent body bytes 0.

sent body bytes=0\text{sent body bytes}=0
Not Modified responseThe cache validation decision and response rows are recomputed from pinned data.Not Modified response - /logo.png validator "v7" -> 304 Not Modified, body 0 bytessectionnamevaluecheckrequest linemethodGETparsedrequest linepath/logo.pngparsedrequest lineversionHTTP/1.1parsedheaderHoststatic.exampleexactheaderIf-None-Match"v7"validatorresourcepath/logo.pngpinnedresourcecurrent ETag"v7"pinnedresourcebody bytes1280would send if changeddecisionvalidator"v7"from requestdecisioncurrent ETag"v7"from resourcedecisionmatchyessame tagdecisionresponse304 Not Modifiedskip bodydecisionsent body bytes0not sentstatusversionHTTP/1.1parsedstatusstatus304 Not Modifiednot modifiedheaderETag"v7"current tagheaderCache-Controlmax-age=60pinnedbodysent body bytes0skipped

Summary

The response carries headers and status, but no body bytes.

header response, body skipped\text{header response, body skipped}
Not Modified responseThe cache validation decision and response rows are recomputed from pinned data.Not Modified response - /logo.png validator "v7" -> 304 Not Modified, body 0 bytessectionnamevaluecheckrequest linemethodGETparsedrequest linepath/logo.pngparsedrequest lineversionHTTP/1.1parsedheaderHoststatic.exampleexactheaderIf-None-Match"v7"validatorresourcepath/logo.pngpinnedresourcecurrent ETag"v7"pinnedresourcebody bytes1280would send if changeddecisionvalidator"v7"from requestdecisioncurrent ETag"v7"from resourcedecisionmatchyessame tagdecisionresponse304 Not Modifiedskip bodydecisionsent body bytes0not sentstatusversionHTTP/1.1parsedstatusstatus304 Not Modifiednot modifiedheaderETag"v7"current tagheaderCache-Controlmax-age=60pinnedbodysent body bytes0skipped