lavkach3

Форк
0
26 строк · 835.0 Байт
1
from fastapi import FastAPI
2
from starlette.datastructures import QueryParams
3
from starlette.exceptions import HTTPException
4
from starlette.middleware.base import BaseHTTPMiddleware
5
from starlette.requests import Request, HTTPConnection
6
from starlette.responses import Response
7
from starlette.types import Scope, Receive, Send, ASGIApp
8
from core.config import config
9
from core.fastapi.adapters import BaseAdapter
10

11

12
class env:
13
    ...
14

15

16
class CompanyMidlleWare:
17
    def __init__(self, app: ASGIApp, *args, **kwargs):
18
        self.app = app
19

20
    async def __call__(self, scope: Scope, receive: Receive, send: Send):
21
        conn = HTTPConnection(scope)
22
        e = env()
23
        for i, v in config.services.items():
24
            e.__setattr__(i, BaseAdapter(conn, i))
25
        scope['env'] = e
26
        await self.app(scope, receive, send)
27

28

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

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.