20 lines
759 B
Python
20 lines
759 B
Python
import requests
|
||
from base64 import b64encode
|
||
from server.backend.schemas.pydantic import settings
|
||
def get_session(extra_headers=None):
|
||
"""
|
||
Создаёт и возвращает requests.Session с базовой авторизацией.
|
||
Можно менять username, password и добавлять дополнительные заголовки.
|
||
"""
|
||
session = requests.Session()
|
||
auth_str = f"{settings.USERNAME}:{settings.PASSWORD}"
|
||
b64_auth_str = b64encode(auth_str.encode("utf-8")).decode("utf-8")
|
||
|
||
headers = {
|
||
"Authorization": f"Basic {b64_auth_str}",
|
||
"Accept": "application/json"
|
||
}
|
||
if extra_headers:
|
||
headers.update(extra_headers)
|
||
session.headers.update(headers)
|
||
return session |