52 lines
1.8 KiB
Markdown
52 lines
1.8 KiB
Markdown
# Game Collection API
|
|
|
|
Dies ist eine Flask-basierte API zur Verwaltung einer Sammlung von Spielen. Die API ermöglicht das Hinzufügen, Abrufen, Bearbeiten und Löschen von Spielen sowie die Benutzerverwaltung.
|
|
|
|
## Endpunkte
|
|
|
|
### Benutzerverwaltung
|
|
|
|
- **POST /users**: Erstellt einen neuen Benutzer (nur für Admins).
|
|
- **POST /users/login**: Meldet einen Benutzer an und gibt ein JWT-Token zurück.
|
|
- **GET /users**: Gibt eine Liste aller Benutzer zurück (nur für Admins).
|
|
- **PUT /users/<int:user_id>**: Aktualisiert die Informationen eines Benutzers (nur für Admins).
|
|
- **DELETE /users/<int:user_id>**: Löscht einen Benutzer (nur für Admins).
|
|
- **PUT /users/change_password**: Ändert das Passwort des angemeldeten Benutzers. Erfordert das aktuelle Passwort und das neue Passwort.
|
|
|
|
### Spieleverwaltung
|
|
|
|
- **POST /games**: Fügt ein neues Spiel zur Sammlung hinzu. Erfordert ein Bild-URL und den Titel des Spiels.
|
|
- **GET /games**: Gibt eine Liste aller Spiele in der Sammlung zurück.
|
|
- **DELETE /games/<int:game_id>**: Löscht ein Spiel aus der Sammlung.
|
|
- **GET /games/search**: Sucht nach Spielen basierend auf einem Suchbegriff.
|
|
|
|
## Installation
|
|
|
|
1. Klone das Repository:
|
|
```bash
|
|
git clone <repository-url>
|
|
cd game_collection
|
|
```
|
|
|
|
2. Installiere die Abhängigkeiten:
|
|
```bash
|
|
pip install -r requirements.txt
|
|
```
|
|
|
|
3. Starte die Anwendung:
|
|
```bash
|
|
flask run
|
|
```
|
|
|
|
## Datenbank
|
|
|
|
Die Anwendung verwendet SQLite zur Speicherung von Benutzern und Spielen. Die Datenbank wird beim ersten Start der Anwendung automatisch erstellt.
|
|
|
|
## Sicherheit
|
|
|
|
Die API verwendet JWT für die Authentifizierung. Stelle sicher, dass du einen geheimen Schlüssel in deiner Umgebung festlegst, um die Token zu signieren.
|
|
|
|
## Lizenz
|
|
|
|
Dieses Projekt ist unter der MIT-Lizenz lizenziert.
|