Add authenticated finance REST API
This commit is contained in:
+3
-1
@@ -7,6 +7,7 @@ from fastapi.responses import HTMLResponse
|
||||
from fastapi.staticfiles import StaticFiles
|
||||
from database import initialize
|
||||
from routes import dashboard, income, export
|
||||
from api.routes import router as api_router
|
||||
|
||||
|
||||
@asynccontextmanager
|
||||
@@ -20,11 +21,12 @@ app.mount('/static', StaticFiles(directory=Path(__file__).parent / 'static'), na
|
||||
app.include_router(dashboard.router)
|
||||
app.include_router(income.router)
|
||||
app.include_router(export.router)
|
||||
app.include_router(api_router)
|
||||
|
||||
|
||||
@app.middleware('http')
|
||||
async def protect_forms(request: Request, call_next):
|
||||
if request.method == 'POST':
|
||||
if request.method == 'POST' and not request.url.path.startswith('/api/v1/'):
|
||||
origin = request.headers.get('origin')
|
||||
if request.headers.get('sec-fetch-site') == 'cross-site' or (origin and urlsplit(origin).netloc != request.headers.get('host')):
|
||||
return HTMLResponse('Fremder Formularursprung ist nicht erlaubt.', status_code=403)
|
||||
|
||||
Reference in New Issue
Block a user