跳到主要內容

APIRequest

公開 API,可用於 Web API 測試。此類別用於建立 APIRequestContext 實例,該實例又可用於發送 Web 請求。此類別的實例可以透過 Playwright.APIRequest 取得。如需更多資訊,請參閱 APIRequestContext


方法

NewContextAsync

新增於:v1.16 apiRequest.NewContextAsync

建立 APIRequestContext 的新實例。

用法

await ApiRequest.NewContextAsync(options);

引數

  • options ApiRequestNewContextOptions? (選用)
    • BaseURL string? (選用)#

      諸如 ApiRequestContext.GetAsync() 之類的方法會透過使用 URL() 建構函式來建構對應的 URL,進而考量基準 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
    • ClientCertificates IEnumerable?<ClientCertificates> (選用)新增於:1.46#

      • Origin string

        憑證有效的確切來源。來源包含 https 通訊協定、主機名稱和選用的連接埠。

      • CertPath string? (選用)

        PEM 格式憑證檔案的路徑。

      • Cert byte[]? (選用)

        PEM 格式憑證的直接值。

      • KeyPath string? (選用)

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

      • Key byte[]? (選用)

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

      • PfxPath string? (選用)

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

      • Pfx byte[]? (選用)

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

      • Passphrase string? (選用)

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

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

      詳細資訊

      要使用的用戶端憑證陣列。每個憑證物件都必須同時具有 certPathkeyPath、單一 pfxPath 或其對應的直接值等效項 (certkey,或 pfx)。或者,如果憑證已加密,則應提供 passphrase 屬性。origin 屬性應提供與憑證有效的請求來源完全相符的來源。

      注意

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

    • ExtraHTTPHeaders IDictionary?<string, string> (選用)#

      包含要與每個請求一起傳送的其他 HTTP 標頭的物件。預設為無。

    • HttpCredentials HttpCredentials? (選用)#

      • Username string

      • Password string

      • Origin string? (選用)

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

      • Send enum HttpCredentialsSend { Unauthorized, Always }? (選用)

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

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

    • IgnoreHTTPSErrors bool? (選用)#

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

    • Proxy Proxy? (選用)#

      • Server string

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

      • Bypass string? (選用)

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

      • Username string? (選用)

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

      • Password string? (選用)

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

      網路 Proxy 設定。

    • StorageState string? (選用)#

      使用給定的儲存狀態填入內容。此選項可用於使用透過 BrowserContext.StorageStateAsync()ApiRequestContext.StorageStateAsync() 取得的已登入資訊初始化內容。儲存狀態檔案的路徑,或由 BrowserContext.StorageStateAsync()ApiRequestContext.StorageStateAsync() 方法之一傳回的值。

    • StorageStatePath string? (選用)新增於:v1.18#

      使用給定的儲存狀態填入內容。此選項可用於使用透過 BrowserContext.StorageStateAsync() 取得的已登入資訊初始化內容。儲存狀態檔案的路徑。

    • Timeout [float]? (選用)#

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

    • UserAgent string? (選用)#

      在此內容中使用的特定使用者代理程式。

傳回