Ответы 4xx означают проблему обработки конкретного клиентского запроса: неверные данные, доступ, отсутствие ресурса или конфликт. Реакция зависит от статуса, а не сводится к бесконечному повтору.
Проверьте запрос в Network или HTTP-клиенте, затем сопоставьте его с серверными логами и трассировкой по request ID. Разделяйте DNS, TLS, транспорт, HTTP и бизнес-ошибку.
Для получения представления ресурса обычно используют GET. Он должен иметь семантику чтения и не запускать запрошенное пользователем изменение состояния.
В HTTP/1.1 блок заголовков завершается пустой строкой, то есть CRLF CRLF после последнего заголовка. Наличие и длину тела затем определяют правила framing, а не само пустое место.
POST не имеет общей гарантии идемпотентности, PATCH тоже не является идемпотентным по определению. Однако конкретную PATCH- или POST-операцию можно спроектировать идемпотентной.
Можно пройти по ID в одном тесте, но параметризация обычно даёт отдельный результат для каждого пользователя и удобнее локализует сбой. Для одного теста полезны subtests или сбор всех неуспешных ID.
WebSocket предоставляет длительное двустороннее соединение с обменом сообщениями, а обычный HTTP строится вокруг запросов и ответов. После установки WebSocket стороны могут отправлять сообщения независимо.
Основные HTTP-методы: GET, HEAD, POST, PUT, PATCH, DELETE, OPTIONS, CONNECT и TRACE. Метод выражает семантику запроса, а не только место передачи параметров.
Расскажите, наблюдали ли запросы и ответы в Playwright, подменяли маршруты или использовали отдельный API-контекст. Это разные способы проверки, и полезно обозначить цель каждого.
До действия задайте фильтр нужных запросов по методу, пути и признаку конкретной операции, затем дождитесь соответствующих ответов. Не выбирайте запросы просто по порядковому номеру в общем потоке.
Из распространённых версий известны HTTP/1.0, HTTP/1.1, HTTP/2 и HTTP/3. HTTP/2 использует бинарные фреймы и несколько потоков в одном соединении, сохраняя основные HTTP-методы и статусы.
Значения в HTTP-запросе передают в пути URL, query-параметрах, заголовках и теле. Cookie тоже передаются заголовком; конкретное место определяется смыслом данных и контрактом API.