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

APIRequest

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


Методы

newContext

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

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

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

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

Аргументы

  • options ApiRequest.NewContextOptions (опционально)
    • setBaseURL String (опционально)#

      Методы, такие как APIRequestContext.get(), учитывают базовый 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
    • 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 позволяет серверу запросить клиентский сертификат и проверить его.

      Детали

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

      Аутентификация по клиентскому сертификату активируется только когда указан хотя бы один клиентский сертификат. Если вы хотите отклонять все клиентские сертификаты, запрашиваемые сервером, нужно указать клиентский сертификат с origin, который не совпадает ни с одним доменом, на которые вы планируете заходить.

      примечание

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

    • setExtraHTTPHeaders Map<String, String> (опционально)#

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

    • setFailOnStatusCode boolean (опционально) Добавлено в: v1.51#

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

    • setHttpCredentials HttpCredentials (опционально)#

      • setUsername String

      • setPassword String

      • setOrigin String (опционально)

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

      • setSend enum HttpCredentialsSend { UNAUTHORIZED, ALWAYS } (опционально)

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

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

    • setIgnoreHTTPSErrors boolean (опционально)#

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

    • setMaxRedirects int (опционально) Добавлено в: v1.52#

      Максимальное количество перенаправлений (redirects) запроса, которые будут автоматически обработаны. Если это число будет превышено, будет выброшена ошибка. Значение по умолчанию — 20. Укажите 0, чтобы не переходить по перенаправлениям. Это значение можно переопределить для каждого запроса отдельно.

    • setProxy Proxy (опционально)#

      • setServer String

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

      • setBypass String (опционально)

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

      • setUsername String (опционально)

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

      • setPassword String (опционально)

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

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

    • setStorageState String (опционально)#

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

    • setStorageStatePath Path (опционально) Добавлено в: v1.18#

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

    • setTimeout double (опционально)#

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

    • setUserAgent String (опционально)#

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

Возвращает