跳到主要內容

APIRequest

公開 API,可用於 Web API 測試。此類別用於建立 APIRequestContext 實例,而該實例又可用於發送 Web 請求。此類別的實例可以通過 Playwright.request() 取得。有關更多資訊,請參閱 APIRequestContext


方法

newContext

加入於:v1.16 apiRequest.newContext

建立 APIRequestContext 的新實例。

用法

APIRequest.newContext();
APIRequest.newContext(options);

參數

  • options ApiRequest.NewContextOptions (選填)
    • setBaseURL String (選填)#

      諸如 APIRequestContext.get() 等方法會通過使用 URL() 建構函式來建構相應的 URL,從而將 base URL 納入考量。範例

      • baseURL:https://127.0.0.1:3000 以及發送請求至 /bar.html 會產生 https://127.0.0.1:3000/bar.html
      • baseURL:https://127.0.0.1:3000/foo/ 以及發送請求至 ./bar.html 會產生 https://127.0.0.1:3000/foo/bar.html
      • baseURL:https://127.0.0.1:3000/foo (不帶尾部斜線) 以及導航至 ./bar.html 會產生 https://127.0.0.1:3000/bar.html
    • setClientCertificates List<ClientCertificates> (選填)加入於:1.46#

      • setOrigin String

        憑證有效的確切來源。來源包含 https 協定、主機名稱和選填的埠。

      • setCertPath Path (選填)

        PEM 格式憑證檔案的路徑。

      • setCert byte[] (選填)

        PEM 格式憑證的直接值。

      • setKeyPath Path (選填)

        PEM 格式私密金鑰檔案的路徑。

      • setKey byte[] (選填)

        PEM 格式私密金鑰的直接值。

      • setPfxPath Path (選填)

        PFX 或 PKCS12 編碼的私密金鑰和憑證鏈檔案的路徑。

      • setPfx byte[] (選填)

        PFX 或 PKCS12 編碼的私密金鑰和憑證鏈的直接值。

      • setPassphrase String (選填)

        私密金鑰 (PEM 或 PFX) 的密碼。

      TLS 用戶端驗證允許伺服器請求用戶端憑證並驗證它。

      詳細資訊

      要使用的用戶端憑證陣列。每個憑證物件都必須同時具有 certPathkeyPath,單個 pfxPath,或其對應的直接值等效項 (certkey,或 pfx)。選填地,如果憑證已加密,則應提供 passphrase 屬性。應提供 origin 屬性,以精確匹配憑證有效的請求來源。

      注意

      在 macOS 上使用 WebKit 時,存取 localhost 將不會取得用戶端憑證。您可以通過將 localhost 替換為 local.playwright 來使其運作。

    • setExtraHTTPHeaders Map<String, String> (選填)#

      包含要與每個請求一起發送的額外 HTTP 標頭的物件。預設為無。

    • setHttpCredentials HttpCredentials (選填)#

      • setUsername String

      • setPassword String

      • setOrigin String (選填)

        限制在特定來源上發送 http 憑證 (scheme://host:埠).

      • setSend enum HttpCredentialsSend { UNAUTHORIZED, ALWAYS } (選填)

        此選項僅適用於從相應 APIRequestContext 發送的請求,並且不影響從瀏覽器發送的請求。'always' - 具有基本驗證憑證的 Authorization 標頭將與每個 API 請求一起發送。'unauthorized - 僅當收到帶有 WWW-Authenticate 標頭的 401 (Unauthorized) 回應時,才會發送憑證。預設為 'unauthorized'

      HTTP 驗證的憑證。如果未指定來源,則使用者名稱和密碼將在未經授權的回應時發送到任何伺服器。

    • setIgnoreHTTPSErrors boolean (選填)#

      是否在發送網路請求時忽略 HTTPS 錯誤。預設為 false

    • setProxy Proxy (選填)#

      • setServer String

        用於所有請求的 Proxy。支援 HTTP 和 SOCKS Proxy,例如 http://myproxy.com:3128socks5://myproxy.com:3128。簡寫形式 myproxy.com:3128 被視為 HTTP Proxy。

      • setBypass String (選填)

        選填的逗號分隔網域以繞過 Proxy,例如 ".com, chromium.org, .domain.com"

      • setUsername String (選填)

        如果 HTTP Proxy 需要驗證,則為選填的使用者名稱。

      • setPassword String (選填)

        如果 HTTP Proxy 需要驗證,則為選填的密碼。

      網路 Proxy 設定。

    • setStorageState String (選填)#

      使用給定的儲存狀態填充上下文。此選項可用於使用通過 BrowserContext.storageState()APIRequestContext.storageState() 獲得的登入資訊來初始化上下文。可以是儲存已儲存狀態的檔案路徑,或 BrowserContext.storageState()APIRequestContext.storageState() 方法之一傳回的值。

    • setStorageStatePath Path (選填)加入於:v1.18#

      使用給定的儲存狀態填充上下文。此選項可用於使用通過 BrowserContext.storageState() 獲得的登入資訊來初始化上下文。儲存已儲存狀態的檔案路徑。

    • setTimeout double (選填)#

      等待回應的最長時間 (毫秒)。預設為 30000 (30 秒)。傳遞 0 以停用逾時。

    • setUserAgent String (選填)#

      在此上下文中使用的特定使用者代理程式。

傳回