Перейти к основному содержимому

APIRequest

Предоставляет API, которое может быть использовано для тестирования Web API. Этот класс используется для создания экземпляра APIRequestContext, который, в свою очередь, может быть использован для отправки веб-запросов. Экземпляр этого класса можно получить через Playwright.APIRequest. Для получения дополнительной информации см. APIRequestContext.


Методы

NewContextAsync

Добавлено в: v1.16 apiRequest.NewContextAsync

Создает новые экземпляры APIRequestContext.

Использование

await ApiRequest.NewContextAsync(options);

Аргументы

  • options ApiRequestNewContextOptions? (необязательно)
    • BaseURL string? (необязательно)#

      Методы, такие как ApiRequestContext.GetAsync(), учитывают базовый URL, используя конструктор URL() для построения соответствующего URL. Примеры:

      • baseURL: http://localhost:3000 и отправка запроса на /bar.html приводит к http://localhost:3000/bar.html
      • baseURL: http://localhost:3000/foo/ и отправка запроса на ./bar.html приводит к http://localhost:3000/foo/bar.html
      • baseURL: http://localhost:3000/foo (без завершающего слэша) и навигация на ./bar.html приводит к http://localhost: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 позволяет серверу запросить клиентский сертификат и проверить его.

      Детали

      Массив клиентских сертификатов для использования. Каждый объект сертификата должен иметь либо оба certPath и keyPath, либо один pfxPath, или их соответствующие прямые значения (cert и key, или pfx). Опционально, свойство passphrase должно быть предоставлено, если сертификат зашифрован. Свойство origin должно быть предоставлено с точным соответствием источнику запроса, для которого сертификат действителен.

      примечание

      При использовании WebKit на macOS, доступ к localhost не будет использовать клиентские сертификаты. Вы можете сделать это, заменив localhost на local.playwright.

    • ExtraHTTPHeaders IDictionary?<string, string> (необязательно)#

      Объект, содержащий дополнительные HTTP-заголовки, которые будут отправлены с каждым запросом. По умолчанию отсутствуют.

    • FailOnStatusCode bool? (необязательно) Добавлено в: v1.51#

      Следует ли выбрасывать исключение при кодах ответа, отличных от 2xx и 3xx. По умолчанию объект ответа возвращается для всех кодов состояния.

    • HttpCredentials HttpCredentials? (необязательно)#

      • Username string

      • Password string

      • Origin string? (необязательно)

        Ограничить отправку HTTP-учетных данных на определенный источник (scheme://host:port).

      • Send enum HttpCredentialsSend { Unauthorized, Always }? (необязательно)

        Эта опция применяется только к запросам, отправленным из соответствующего APIRequestContext и не влияет на запросы, отправленные из браузера. 'always' - заголовок Authorization с учетными данными базовой аутентификации будет отправлен с каждым API-запросом. 'unauthorized - учетные данные отправляются только при получении ответа 401 (Unauthorized) с заголовком WWW-Authenticate. По умолчанию 'unauthorized'.

      Учетные данные для HTTP-аутентификации. Если источник не указан, имя пользователя и пароль отправляются на любые серверы при неавторизованных ответах.

    • IgnoreHTTPSErrors bool? (необязательно)#

      Следует ли игнорировать ошибки HTTPS при отправке сетевых запросов. По умолчанию false.

    • Proxy Proxy? (необязательно)#

      • Server string

        Прокси, который будет использоваться для всех запросов. Поддерживаются HTTP и SOCKS прокси, например http://myproxy.com:3128 или socks5://myproxy.com:3128. Краткая форма myproxy.com:3128 считается HTTP-прокси.

      • Bypass string? (необязательно)

        Необязательные домены, разделенные запятыми, для обхода прокси, например ".com, chromium.org, .domain.com".

      • Username string? (необязательно)

        Необязательное имя пользователя для использования, если HTTP-прокси требует аутентификации.

      • Password string? (необязательно)

        Необязательный пароль для использования, если HTTP-прокси требует аутентификации.

      Настройки сетевого прокси.

    • StorageState string? (необязательно)#

      Заполняет контекст заданным состоянием хранилища. Эта опция может быть использована для инициализации контекста с информацией о входе, полученной через BrowserContext.StorageStateAsync() или ApiRequestContext.StorageStateAsync(). Либо путь к файлу с сохраненным состоянием хранилища, либо значение, возвращенное одним из методов BrowserContext.StorageStateAsync() или ApiRequestContext.StorageStateAsync().

    • StorageStatePath string? (необязательно) Добавлено в: v1.18#

      Заполняет контекст заданным состоянием хранилища. Эта опция может быть использована для инициализации контекста с информацией о входе, полученной через BrowserContext.StorageStateAsync(). Путь к файлу с сохраненным состоянием хранилища.

    • Timeout [float]? (необязательно)#

      Максимальное время в миллисекундах для ожидания ответа. По умолчанию 30000 (30 секунд). Укажите 0, чтобы отключить тайм-аут.

    • UserAgent string? (необязательно)#

      Специфический пользовательский агент для использования в этом контексте.

Возвращает