playwright/docs/src/api/class-apirequest.md
Max Schmitt 9569cb5c1e
feat: support client certificates (#31529)
Signed-off-by: Max Schmitt <max@schmitt.mx>
Co-authored-by: Dmitry Gozman <dgozman@gmail.com>
2024-07-12 11:42:24 +02:00

3.5 KiB

class: APIRequest

  • since: v1.16

Exposes API that can be used for the Web API testing. This class is used for creating [APIRequestContext] instance which in turn can be used for sending web requests. An instance of this class can be obtained via [property: Playwright.request]. For more information see [APIRequestContext].

async method: APIRequest.newContext

  • since: v1.16
  • returns: <[APIRequestContext]>

Creates new instances of [APIRequestContext].

option: APIRequest.newContext.clientCertificates = %%-context-option-clientCertificates-%%

  • since: 1.46

option: APIRequest.newContext.useragent = %%-context-option-useragent-%%

  • since: v1.16

option: APIRequest.newContext.extraHTTPHeaders = %%-context-option-extrahttpheaders-%%

  • since: v1.16

option: APIRequest.newContext.httpCredentials = %%-context-option-httpcredentials-%%

  • since: v1.16

option: APIRequest.newContext.proxy = %%-browser-option-proxy-%%

  • since: v1.16

option: APIRequest.newContext.ignoreHTTPSErrors = %%-context-option-ignorehttpserrors-%%

  • since: v1.16

option: APIRequest.newContext.timeout

  • since: v1.16
  • timeout <[float]>

Maximum time in milliseconds to wait for the response. Defaults to 30000 (30 seconds). Pass 0 to disable timeout.

option: APIRequest.newContext.baseURL

  • since: v1.16
  • baseURL <[string]>

Methods like [method: APIRequestContext.get] take the base URL into consideration by using the URL() constructor for building the corresponding URL. Examples:

  • baseURL: http://localhost:3000 and sending request to /bar.html results in http://localhost:3000/bar.html
  • baseURL: http://localhost:3000/foo/ and sending request to ./bar.html results in http://localhost:3000/foo/bar.html
  • baseURL: http://localhost:3000/foo (without trailing slash) and navigating to ./bar.html results in http://localhost:3000/bar.html

option: APIRequest.newContext.storageState

  • since: v1.16
  • langs: js, python
  • storageState <[path]|[Object]>
    • cookies <[Array]<[Object]>>
      • name <[string]>
      • value <[string]>
      • domain <[string]>
      • path <[string]>
      • expires <[float]> Unix time in seconds.
      • httpOnly <[boolean]>
      • secure <[boolean]>
      • sameSite <[SameSiteAttribute]<"Strict"|"Lax"|"None">>
    • origins <[Array]<[Object]>>
      • origin <[string]>
      • localStorage <[Array]<[Object]>>
        • name <[string]>
        • value <[string]>

Populates context with given storage state. This option can be used to initialize context with logged-in information obtained via [method: BrowserContext.storageState] or [method: APIRequestContext.storageState]. Either a path to the file with saved storage, or the value returned by one of [method: BrowserContext.storageState] or [method: APIRequestContext.storageState] methods.

option: APIRequest.newContext.storageState

  • since: v1.16
  • langs: java, csharp
  • storageState <[string]>

Populates context with given storage state. This option can be used to initialize context with logged-in information obtained via [method: BrowserContext.storageState] or [method: APIRequestContext.storageState]. Either a path to the file with saved storage, or the value returned by one of [method: BrowserContext.storageState] or [method: APIRequestContext.storageState] methods.

option: APIRequest.newContext.storageStatePath = %%-csharp-java-context-option-storage-state-path-%%

  • since: v1.18