Основа HTTP-клиентов: общие таймауты, заголовки, обработка ответов
Основа HTTP-клиентов: общие таймауты, заголовки, обработка ответов.
- class yandex_music.utils.request_base.DefaultTimeout
Заглушка для установки времени ожидания по умолчанию.
- class yandex_music.utils.request_base.RequestBase
Базовый класс для выполнения запросов.
Предоставляет общую логику для синхронного и асинхронного классов запросов: настройка заголовков, авторизация, парсинг ответов, нормализация ключей.
- Parameters:
client (
yandex_music.Client, optional) – Клиент Yandex Music.headers (
dict, optional) – Заголовки передаваемые с каждым запросом.proxy_url (
str, optional) – Прокси.
- set_language(lang)
Добавляет заголовок языка для каждого запроса.
Note
Возможные значения lang: en/uz/uk/us/ru/kk/hy.
- Parameters:
lang (
str) – Язык.
- set_timeout(timeout=<yandex_music.utils.request_base.DefaultTimeout object>)
Устанавливает время ожидания для всех запросов.
- Parameters:
timeout (
int|float) – Время ожидания от сервера.
- set_authorization(token)
Добавляет заголовок авторизации для каждого запроса.
Note
Используется при передаче своего экземпляра Request’a клиенту.
- Parameters:
token (
str) – OAuth токен.
- set_and_return_client(client)
Принимает клиент и присваивает его текущему объекту. При наличии авторизации добавляет заголовок.
- Parameters:
client (
yandex_music.Client) – Клиент Yandex Music.- Returns:
Клиент Yandex Music.
- Return type: