Ajout du TP n°4
This commit is contained in:
37
TP4/meme-app/backend/app.py
Normal file
37
TP4/meme-app/backend/app.py
Normal file
@@ -0,0 +1,37 @@
|
||||
from fastapi import FastAPI
|
||||
from pymongo import MongoClient
|
||||
from fastapi.middleware.cors import CORSMiddleware
|
||||
|
||||
app = FastAPI()
|
||||
|
||||
# Juste après la déclaration FastAPI()
|
||||
# Ajouter le middleware CORS
|
||||
origins = [
|
||||
"http://localhost",
|
||||
"http://localhost:80",
|
||||
"http://frontend",
|
||||
"http://frontend:80"
|
||||
]
|
||||
|
||||
app.add_middleware(
|
||||
CORSMiddleware,
|
||||
allow_origins=origins, # Liste des origines autorisées
|
||||
allow_credentials=True,
|
||||
allow_methods=["*"],
|
||||
allow_headers=["*"],
|
||||
)
|
||||
|
||||
# MongoDB connection
|
||||
client = MongoClient("mongodb://mongodb:27017/")
|
||||
db = client.memes_db
|
||||
|
||||
@app.get("/memes")
|
||||
def get_memes():
|
||||
memes = list(db.memes.find({}, {"_id": 0}))
|
||||
return {"memes": memes}
|
||||
|
||||
@app.post("/memes")
|
||||
def create_meme(title: str, url: str):
|
||||
meme = {"title": title, "url": url}
|
||||
db.memes.insert_one(meme)
|
||||
return {"message": "Meme added successfully"}
|
Reference in New Issue
Block a user