Модуль 7 · Урок 26

URI, HTTP messages і Network lifecycle

URL у рядку браузера — лише початок. QA розкладає target, request/response metadata, content, initiator і timing, а transport error не плутає з отриманим HTTP status.

URI targetRequest / responseFields / contentNetwork timing

URI та origin — різні test dimensions

Scheme, host і effective port формують origin; path і query ідентифікують target усередині нього, fragment browser не надсилає в HTTP request. Query order/encoding, trailing slash, Unicode/punycode host та default ports можуть впливати на routing або cache key — очікування задає contract.

ЧастинаПрикладПеревірка
SchemehttpsSecure authoritative access і redirect policy.
Authoritybook.test:443Host/port, origin та certificate identity.
Path/query/books?lang=ukRouting, encoding, defaults і duplicate params.
Fragment#reviewsClient navigation; не request target.

Анатомія message

Request має method і target; response — status code. Обидва можуть мати fields, content і trailers. У HTTP/1.1 wire syntax видно start-line, у HTTP/2/3 framing інший, але method/status/field/content semantics зберігаються. Не робіть protocol assertion зі старого текстового прикладу.

Evidence contract
URL/build/time → initiator → method/target/protocol → request fields/content summary → status → response fields/media type/size → timing → resulting UI/server state.

Transport failure або HTTP response?

Before HTTPDNS, connection, TLS або policy може зупинити обмін без response status.
HTTP responseНавіть 4xx/5xx — отримана response з defined semantics.
Content handlingWrong encoding/media type, truncation або parse failure виникають після headers.
Application resultHTTP 2xx ще не доводить правильний business state.

Звіт «500 через DNS» суперечливий: або є 500 response, або DNS failure не дала HTTP response. Фіксуйте точний шар.

Network panel як журнал

У Chrome Network перевіряйте Preserve log/Disable cache лише з записаними умовами. Для request збережіть General, Headers, Payload/Request, Preview/Response, Initiator та Timing. TTFB включає latency і час підготовки response; Content Download — читання content. HAR може містити cookies/tokens/PII, тому перед передачею потрібна redaction.

Практика

У `network-evidence-report.csv` розберіть document, CSS, image і synthetic booking request: initiator, protocol, status, transferred/decoded size, timing, cache/service-worker source та conclusion.

Офіційні джерела

Практична перевірка · урок 26 з 32

Закріпіть матеріал уроку

Три сценарні питання. Для зарахування уроку потрібно дати щонайменше дві правильні відповіді.

1. Чи надсилається URI fragment у HTTP request?
2. Що визначає origin, а що target route?
3. Що обов’язково описує HTTP request semantics?