The toy server compares two pinned variants.

highlighted = computed this step

The server has two toy variants

One variant is HTML display words, and one variant is JSON display words.

two variants\text{two variants}
Candidate variantsThe request rows, candidate variants, response rows, and selection check are recomputed from pinned bytes.Candidate variants - GET /item selects application/json, body 14 bytessectionnamevaluecheckrequest linemethodGETparsedrequest linepath/itemparsedrequest lineversionHTTP/1.1parsedheaderHostapi.exampleexactheaderAcceptapplication/jsonrequested typevariant 1typetext/htmlcandidatevariant 1body displayHTML paragraph catsafe display formvariant 1body hex3c703e6361743c2f703epinned bytesvariant 1body bytes10countedvariant 1matchnoAccept comparevariant 2typeapplication/jsoncandidatevariant 2body displayJSON name catsafe display formvariant 2body hex7b226e616d65223a22636174227dpinned bytesvariant 2body bytes14countedvariant 2matchyesAccept comparestatusversionHTTP/1.1parsedstatusstatus200 OKokheaderContent-Typeapplication/jsonselectedheaderContent-Length14declared bytesbodydisplay wordsJSON name catsafe display formbodyexact hex7b226e616d65223a22636174227dpinned bytescheckAcceptapplication/jsonrequestcheckselected typeapplication/jsonresponsecheckbody bytes14sentcheckmatchyessame type

HTML does not match

The text/html row says no because the request asked for application/json.

text/html no\text{text/html no}
Candidate variantsThe request rows, candidate variants, response rows, and selection check are recomputed from pinned bytes.Candidate variants - GET /item selects application/json, body 14 bytessectionnamevaluecheckrequest linemethodGETparsedrequest linepath/itemparsedrequest lineversionHTTP/1.1parsedheaderHostapi.exampleexactheaderAcceptapplication/jsonrequested typevariant 1typetext/htmlcandidatevariant 1body displayHTML paragraph catsafe display formvariant 1body hex3c703e6361743c2f703epinned bytesvariant 1body bytes10countedvariant 1matchnoAccept comparevariant 2typeapplication/jsoncandidatevariant 2body displayJSON name catsafe display formvariant 2body hex7b226e616d65223a22636174227dpinned bytesvariant 2body bytes14countedvariant 2matchyesAccept comparestatusversionHTTP/1.1parsedstatusstatus200 OKokheaderContent-Typeapplication/jsonselectedheaderContent-Length14declared bytesbodydisplay wordsJSON name catsafe display formbodyexact hex7b226e616d65223a22636174227dpinned bytescheckAcceptapplication/jsonrequestcheckselected typeapplication/jsonresponsecheckbody bytes14sentcheckmatchyessame type

JSON matches

The application/json row says yes. Its exact body is carried by the recomputed hex row.

application/json yes\text{application/json yes}
Candidate variantsThe request rows, candidate variants, response rows, and selection check are recomputed from pinned bytes.Candidate variants - GET /item selects application/json, body 14 bytessectionnamevaluecheckrequest linemethodGETparsedrequest linepath/itemparsedrequest lineversionHTTP/1.1parsedheaderHostapi.exampleexactheaderAcceptapplication/jsonrequested typevariant 1typetext/htmlcandidatevariant 1body displayHTML paragraph catsafe display formvariant 1body hex3c703e6361743c2f703epinned bytesvariant 1body bytes10countedvariant 1matchnoAccept comparevariant 2typeapplication/jsoncandidatevariant 2body displayJSON name catsafe display formvariant 2body hex7b226e616d65223a22636174227dpinned bytesvariant 2body bytes14countedvariant 2matchyesAccept comparestatusversionHTTP/1.1parsedstatusstatus200 OKokheaderContent-Typeapplication/jsonselectedheaderContent-Length14declared bytesbodydisplay wordsJSON name catsafe display formbodyexact hex7b226e616d65223a22636174227dpinned bytescheckAcceptapplication/jsonrequestcheckselected typeapplication/jsonresponsecheckbody bytes14sentcheckmatchyessame type

Summary

The candidate table shows the choice before the response is sent.

candidate rows checked\text{candidate rows checked}
Candidate variantsThe request rows, candidate variants, response rows, and selection check are recomputed from pinned bytes.Candidate variants - GET /item selects application/json, body 14 bytessectionnamevaluecheckrequest linemethodGETparsedrequest linepath/itemparsedrequest lineversionHTTP/1.1parsedheaderHostapi.exampleexactheaderAcceptapplication/jsonrequested typevariant 1typetext/htmlcandidatevariant 1body displayHTML paragraph catsafe display formvariant 1body hex3c703e6361743c2f703epinned bytesvariant 1body bytes10countedvariant 1matchnoAccept comparevariant 2typeapplication/jsoncandidatevariant 2body displayJSON name catsafe display formvariant 2body hex7b226e616d65223a22636174227dpinned bytesvariant 2body bytes14countedvariant 2matchyesAccept comparestatusversionHTTP/1.1parsedstatusstatus200 OKokheaderContent-Typeapplication/jsonselectedheaderContent-Length14declared bytesbodydisplay wordsJSON name catsafe display formbodyexact hex7b226e616d65223a22636174227dpinned bytescheckAcceptapplication/jsonrequestcheckselected typeapplication/jsonresponsecheckbody bytes14sentcheckmatchyessame type