Blorg-Backend/main.py

80 lines
1.5 KiB
Python

from typing import Union
from fastapi import FastAPI
from fastapi.middleware.cors import CORSMiddleware
from pydantic import BaseModel
import psycopg2
dbconn = psycopg2.connect(database="blorgdb",
host="172.20.0.10",
user="dev",
password="dev",
port="5432")
dbcursor = dbconn.cursor()
dbcursor.execute("""
DO $$
BEGIN
IF (EXISTS (SELECT *
FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_NAME = 'users'))
THEN
RAISE NOTICE 'Table does exist!';
ELSE
RAISE NOTICE 'User Table does not exist! Creating table.';
CREATE TABLE users (
UserID int,
FirstName varchar(255),
LastName varchar(255),
PasswordHash varchar(255)
);
END IF;
END;
$$""")
#print(dbcursor.fetchall())
for notice in dbconn.notices:
print("(SQL SERVER) " + notice)
dbconn.commit()
dbcursor.close()
dbconn.close()
app = FastAPI()
origins = [
"http://localhost",
"http://localhost:8080",
]
app.add_middleware(
CORSMiddleware,
allow_origins=origins,
allow_credentials=True,
allow_methods=["*"],
allow_headers=["*"],
)
@app.get("/")
def getroot():
return {"Hello": "World"}
class ApiBody(BaseModel):
username: str
password: str
@app.post("/api")
def postapi(body: ApiBody):
print(body.username)
print(body.password)
return body
@app.get("/api")
def getapi():
return {"Hello": "API!"}