api/main.py
2024-08-10 22:49:00 -04:00

70 lines
1.2 KiB
Python

#!/usr/bin/env python3.12
import importlib
import logging
from typing import Union, Any
from fastapi import FastAPI, HTTPException, Response, Form
from fastapi.middleware.cors import CORSMiddleware
logger = logging.getLogger()
logger.setLevel(logging.DEBUG)
app = FastAPI()
util = importlib.import_module("util").Utilities()
constants = importlib.import_module("constants").Constants()
origins = [
"https://codey.lol",
]
app.add_middleware(CORSMiddleware,
allow_origins=origins,
allow_credentials=True,
allow_methods=["POST"],
allow_headers=["*"])
"""
Blacklisted routes
"""
@app.get("/")
def disallow_get():
return util.get_blocked_response()
@app.get("/favicon.ico")
def disallow_get():
return util.get_blocked_response()
@app.get("/{any}")
def disallow_get(any: Any):
return util.get_blocked_response()
@app.post("/")
def disallow_base_post():
return util.get_blocked_response()
"""
End Blacklisted Routes
"""
"""
Actionable Routes
"""
lyric_search_endpoint = importlib.import_module("endpoints.LyricSearch").LyricSearch(app, util, constants)
"""
End Actionable Routes
"""
# @app.get("/items/{item_id}")
# def read_item(item_id: int, q: Union[str, None] = None):
# return {"item_id": item_id, "q": q}