41 lines
1.3 KiB
Python
41 lines
1.3 KiB
Python
from fastapi import FastAPI
|
|
from random import choice
|
|
from typing import List
|
|
|
|
# 📝 Die Wortliste (kann beliebig erweitert werden)
|
|
GERMAN_WORDS: List[str] = [
|
|
"Haus", "Tisch", "Apfel", "Straße", "Flugzeug",
|
|
"Schlüssel", "Computer", "Bibliothek", "Deutschland",
|
|
"Flasche", "Maus", "Wolke", "Lampe", "Spiegel",
|
|
"Kaffee", "Programmierung", "RestAPI"
|
|
]
|
|
|
|
# 💡 Initialisiere die FastAPI-Anwendung
|
|
app = FastAPI(
|
|
title="German Hangman Word API",
|
|
description="Gibt ein zufälliges deutsches Wort aus einer vordefinierten Liste zurück."
|
|
)
|
|
|
|
@app.get("/")
|
|
def read_root():
|
|
"""Zeigt eine Willkommensnachricht an."""
|
|
return {"message": "Willkommen zur deutschen Zufallswort-API. Nutze /random_word"}
|
|
|
|
@app.get("/random_word")
|
|
def get_random_word():
|
|
"""
|
|
Gibt ein einzelnes, zufällig ausgewähltes deutsches Wort zurück.
|
|
"""
|
|
# 🎲 Wähle ein zufälliges Wort aus der Liste
|
|
random_word = choice(GERMAN_WORDS)
|
|
|
|
# 📤 Gib das Wort als JSON-Objekt zurück
|
|
return {"word": random_word}
|
|
|
|
# OPTIONAL: Ein Endpunkt, der die gesamte Wortliste zurückgibt
|
|
@app.get("/word_list")
|
|
def get_word_list():
|
|
"""
|
|
Gibt die vollständige Liste der verfügbaren Wörter zurück (nur zu Debugging-Zwecken).
|
|
"""
|
|
return {"count": len(GERMAN_WORDS), "words": GERMAN_WORDS} |