APIResponse
APIResponse 类表示由 api_request_context.get() 和类似方法返回的响应。
- 同步
- 异步
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
新增于:v1.16返回包含响应正文的缓冲区。
用法
api_response.body()
返回值
dispose
新增于:v1.16释放此响应的正文。如果不调用此方法,则正文将保留在内存中,直到上下文关闭。
用法
api_response.dispose()
返回值
json
新增于:v1.16返回响应正文的 JSON 表示形式。
如果响应正文无法通过JSON.parse
解析,则此方法将抛出异常。
用法
api_response.json()
返回值
text
新增于:v1.16返回响应正文的文本表示形式。
用法
api_response.text()
返回值
属性
headers
新增于:v1.16一个对象,包含与该响应关联的所有响应 HTTP 标头。
用法
api_response.headers
返回值
headers_array
新增于:v1.16一个数组,包含与该响应关联的所有响应 HTTP 标头。标头名称不转换为小写。具有多个条目的标头(例如Set-Cookie
)在数组中出现多次。
用法
api_response.headers_array
返回值
ok
新增于:v1.16包含一个布尔值,指示响应是否成功(状态在 200-299 范围内)或失败。
用法
api_response.ok
返回值
status
新增于:v1.16包含响应的状态代码(例如,成功时的 200)。
用法
api_response.status
返回值
status_text
新增于:v1.16包含响应的状态文本(例如,成功时的“OK”)。
用法
api_response.status_text
返回值
url
新增于:v1.16包含响应的 URL。
用法
api_response.url
返回值