Cluster · разработчикам

Session

Базовый URL и общие заголовки запросов. Объект не является отдельным сетевым профилем ядра.

Все методы SDK · Типы и ошибки

Получение объекта

session = app.web.session("https://example.org/api/")

__init__

Создаёт Session. Обычный способ получения объекта показан выше; прямой конструктор не выполняет сетевые запросы.

def __init__(web: Web, url: str, headers: dict[str, str] | None = None) -> None: ...

Аргументы

Результат

None. Создаёт Session. Обычный способ получения объекта показан выше; прямой конструктор не выполняет сетевые запросы.

Права

Не требует прав: операция выполняется локально и сама не обращается к ядру. Права понадобятся при отправке, сохранении или чтении через службу.

Ошибки

Пример

# Обычный способ получения объекта:
session = app.web.session("https://example.org/api/")

request

Соединяет базовый URL с путём и создаёт запрос. Другой протокол или хост запрещены, чтобы не передавать туда общие заголовки.

def request(path: str = '', method: str = 'GET') -> Request: ...

Аргументы

Результат

Request. Соединяет базовый URL с путём и создаёт запрос. Другой протокол или хост запрещены, чтобы не передавать туда общие заголовки.

Права

Не требует прав: операция выполняется локально и сама не обращается к ядру. Права понадобятся при отправке, сохранении или чтении через службу.

Ошибки

Пример

result = session.request()

get

Выполняет GET по относительному пути с query-параметрами.

async def get(path: str = '', **query: QueryValue) -> Response: ...

Аргументы

Результат

Response. Выполняет GET по относительному пути с query-параметрами.

Права

Нужны web.request. Ограничение domains проверяется при запросе; web.full может заменить web.request.

Ошибки

Пример

result = await session.get(page=1)

post

Выполняет POST по относительному пути с JSON-телом.

async def post(path: str = '', data: JSON = None) -> Response: ...

Аргументы

Результат

Response. Выполняет POST по относительному пути с JSON-телом.

Права

Нужны web.request. Ограничение domains проверяется при запросе; web.full может заменить web.request.

Ошибки

Пример

result = await session.post()

Меняет общий заголовок для будущих запросов. Уже созданные запросы имеют собственные копии заголовков.

def header(name: str, value: str) -> Self: ...

Аргументы

Результат

Self. Тот же объект после успешной операции. Меняет общий заголовок для будущих запросов. Уже созданные запросы имеют собственные копии заголовков.

Права

Не требует прав: операция выполняется локально и сама не обращается к ядру. Права понадобятся при отправке, сохранении или чтении через службу.

Ошибки

Пример

result = session.header("Accept", "application/json")