APIResponse
Класс APIResponse представляет ответы, возвращаемые методами api_request_context.get() и аналогичными.
- Sync
- Async
from playwright.sync_api import sync_playwright
with sync_playwright() as p:
context = playwright.request.new_context()
response = context.get("https://example.com/user/repos")
assert response.ok
assert response.status == 200
assert response.headers["content-type"] == "application/json; charset=utf-8"
assert response.json()["name"] == "foobar"
assert response.body() == '{"status": "ok"}'
import asyncio
from playwright.async_api import async_playwright, Playwright
async def run(playwright: Playwright):
context = await playwright.request.new_context()
response = await context.get("https://example.com/user/repos")
assert response.ok
assert response.status == 200
assert response.headers["content-type"] == "application/json; charset=utf-8"
assert response.json()["name"] == "foobar"
assert await response.body() == '{"status": "ok"}'
async def main():
async with async_playwright() as playwright:
await run(playwright)
asyncio.run(main())
Методы
body
Added in: v1.16Возвращает буфер с телом ответа.
Использование
api_response.body()
Возвращает
dispose
Added in: v1.16Освобождает тело этого ответа. Если не вызвать, то тело останется в памяти до закрытия контекста.
Использование
api_response.dispose()
Возвращает
json
Added in: v1.16Возвращает JSON-представление тела ответа.
Этот метод вызовет ошибку, если тело ответа не может быть разобрано с помощью JSON.parse
.
Использование
api_response.json()
Возвращает
text
Added in: v1.16Возвращает текстовое представление тела ответа.
Использование
api_response.text()
Возвращает
Properties
headers
Added in: v1.16Объект со всеми HTTP-заголовками ответа, связанными с этим ответом.
Использование
api_response.headers
Возвращает
headers_array
Added in: v1.16Массив со всеми HTTP-заголовками ответа, связанными с этим ответом. Имена заголовков не приводятся к нижнему регистру. Заголовки с несколькими записями, такие как Set-Cookie
, появляются в массиве несколько раз.
Использование
api_response.headers_array
Возвращает
ok
Added in: v1.16Содержит булево значение, указывающее, был ли ответ успешным (статус в диапазоне 200-299) или нет.
Использование
api_response.ok
Возвращает
status
Added in: v1.16Содержит код статуса ответа (например, 200 для успешного выполнения).
Использование
api_response.status
Возвращает
status_text
Added in: v1.16Содержит текст статуса ответа (например, обычно "OK" для успешного выполнения).
Использование
api_response.status_text
Возвращает
url
Added in: v1.16Содержит URL ответа.
Использование
api_response.url
Возвращает