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

APIRequest

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


Методы

new_context

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

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

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

api_request.new_context()
api_request.new_context(**kwargs)

Аргументы

  • base_url str (опционально)#

    Методы, такие как api_request_context.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
  • client_certificates List[Dict] (опционально) Добавлено в: 1.46#

    • origin str

      Точный источник, для которого сертификат действителен. Источник включает протокол https, имя хоста и, возможно, порт.

    • certPath Union[str, pathlib.Path] (опционально)

      Путь к файлу с сертификатом в формате PEM.

    • cert bytes (опционально)

      Прямое значение сертификата в формате PEM.

    • keyPath Union[str, pathlib.Path] (опционально)

      Путь к файлу с закрытым ключом в формате PEM.

    • key bytes (опционально)

      Прямое значение закрытого ключа в формате PEM.

    • pfxPath Union[str, pathlib.Path] (опционально)

      Путь к PFX или PKCS12 закодированному закрытому ключу и цепочке сертификатов.

    • pfx bytes (опционально)

      Прямое значение PFX или PKCS12 закодированного закрытого ключа и цепочки сертификатов.

    • passphrase str (опционально)

      Пароль для закрытого ключа (PEM или PFX).

    Аутентификация клиента TLS позволяет серверу запросить клиентский сертификат и проверить его.

    Детали

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

    примечание

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

  • extra_http_headers Dict[str, str] (опционально)#

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

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

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

  • http_credentials Dict (опционально)#

    • username str

    • password str

    • origin str (опционально)

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

    • send "unauthorized" | "always" (опционально)

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

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

  • ignore_https_errors bool (опционально)#

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

  • proxy Dict (опционально)#

    • server str

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

    • bypass str (опционально)

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

    • username str (опционально)

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

    • password str (опционально)

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

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

  • storage_state Union[str, pathlib.Path] | Dict (опционально)#

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

  • timeout float (опционально)#

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

  • user_agent str (опционально)#

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

Возвращает