mirror of
https://github.com/andrey271192/domen_hydra.git
synced 2026-09-20 14:42:00 +00:00
Add HydraRoute Manager web server — standalone domain management UI
Made-with: Cursor
This commit is contained in:
22
server/database.py
Normal file
22
server/database.py
Normal file
@@ -0,0 +1,22 @@
|
||||
import json, logging
|
||||
from pathlib import Path
|
||||
logger = logging.getLogger("hydra")
|
||||
|
||||
def load_json(path: Path, default=None):
|
||||
if default is None: default = {}
|
||||
if not isinstance(path, Path): path = Path(path)
|
||||
try:
|
||||
if path.exists():
|
||||
text = path.read_text(encoding="utf-8")
|
||||
if text.strip(): return json.loads(text)
|
||||
return default
|
||||
except Exception as e:
|
||||
logger.error(f"Corrupt {path.name}: {e}"); return default
|
||||
|
||||
def save_json(path: Path, data):
|
||||
if not isinstance(path, Path): path = Path(path)
|
||||
try:
|
||||
path.parent.mkdir(parents=True, exist_ok=True)
|
||||
path.write_text(json.dumps(data, ensure_ascii=False, indent=2, default=str), encoding="utf-8")
|
||||
except Exception as e:
|
||||
logger.error(f"Save fail {path}: {e}")
|
||||
Reference in New Issue
Block a user