[+] add api settings
This commit is contained in:
parent
afdc7c17b6
commit
814fefd18b
@ -3,6 +3,8 @@ import copy
|
||||
import uvicorn
|
||||
import sys
|
||||
|
||||
from .settings import Settings as APISettings
|
||||
|
||||
async def websocket_tickers(
|
||||
websocket: fastapi.WebSocket,
|
||||
) -> None:
|
||||
@ -23,8 +25,8 @@ def run(args: list[str]):
|
||||
|
||||
uvicorn.run(
|
||||
create_app(),
|
||||
host='0.0.0.0',
|
||||
port=80,
|
||||
host=APISettings.singleton().uvicorn_host,
|
||||
port=APISettings.singleton().uvicorn_port,
|
||||
loop='uvloop',
|
||||
log_config=log_config,
|
||||
)
|
||||
|
18
deps/test-task-2025-06-30-v1/python/online/fxreader/pr34/test_task_2025_06_30_v1/async_api/settings.py
vendored
Normal file
18
deps/test-task-2025-06-30-v1/python/online/fxreader/pr34/test_task_2025_06_30_v1/async_api/settings.py
vendored
Normal file
@ -0,0 +1,18 @@
|
||||
import pydantic
|
||||
import pydantic_settings
|
||||
|
||||
from typing import (ClassVar, Optional,)
|
||||
|
||||
|
||||
class Settings(pydantic_settings.BaseSettings):
|
||||
uvicorn_port : int = 80
|
||||
uvicorn_host : str = '127.0.0.1'
|
||||
|
||||
_singleton : ClassVar[Optional['Settings']] = None
|
||||
|
||||
@classmethod
|
||||
def singleton(cls) -> 'Settings':
|
||||
if cls._singleton is None:
|
||||
cls._singleton = Settings.model_validate({})
|
||||
|
||||
return cls._singleton
|
Loading…
Reference in New Issue
Block a user