f052_admin_area #27

Merged
jared merged 13 commits from f052_admin_area into development 2025-08-21 11:08:45 +02:00
Owner
  • Neue Seite zur Benutzerverwaltung
  • Neue userService mit getUsers, addUser, deleteUser
  • Entsprechende API Endpoints für User abrufen, hinzufügen und löschen
  • DB: Benutzer-Tabelle um neuen Constraint erweitert, dass Name eindeutig sein muss
- Neue Seite zur Benutzerverwaltung - Neue userService mit getUsers, addUser, deleteUser - Entsprechende API Endpoints für User abrufen, hinzufügen und löschen - DB: Benutzer-Tabelle um neuen Constraint erweitert, dass Name eindeutig sein muss
trachi93 added 9 commits 2025-08-07 08:04:41 +02:00
jared requested changes 2025-08-13 07:06:13 +02:00
@@ -0,0 +17,4 @@
userList = await getUsers();
})
async function getUsers() {
Owner

try catch block benutzen

try catch block benutzen
trachi93 marked this conversation as resolved
@@ -0,0 +18,4 @@
})
async function getUsers() {
const URL = "/api/users"
Owner

sowas kann man ganz gut in eine constante auslagern also ein enum oder objekt, welches alle routen hält und ich diese dann nur referenzieren muss. das sind solche "magic strings"

sowas kann man ganz gut in eine constante auslagern also ein enum oder objekt, welches alle routen hält und ich diese dann nur referenzieren muss. das sind solche "magic strings"
Author
Owner

müsste ganzheitlich getan werden -> Ticket angelegt

müsste ganzheitlich getan werden -> Ticket angelegt
trachi93 marked this conversation as resolved
@@ -0,0 +24,4 @@
return await response.json();
}
async function addUser() {
Owner

Try Catch block

Try Catch block
trachi93 marked this conversation as resolved
@@ -0,0 +35,4 @@
return;
}
const URL = "/api/users";
Owner

s.o.

s.o.
jared marked this conversation as resolved
@@ -0,0 +36,4 @@
}
const URL = "/api/users";
const hashedUserPassword = new jsSHA('SHA-512', 'TEXT').update(userPassword).getHash('HEX');
Owner

Das hashen von Passwörtern solle stets im Backend erfolgen. Hier sollte auch auf eine sichere Methode geachtet werden die noch eine Salt wert einfügt z.B. bycrpty o.ä.

Das hashen von Passwörtern solle stets im Backend erfolgen. Hier sollte auch auf eine sichere Methode geachtet werden die noch eine Salt wert einfügt z.B. bycrpty o.ä.
Author
Owner

manuelles hashen wurde durch bcrypt ausgetauscht.

manuelles hashen wurde durch bcrypt ausgetauscht.
trachi93 marked this conversation as resolved
@@ -0,0 +48,4 @@
})
if (response.ok) {
userList = await getUsers();
Owner

Performanter wäre es wenn du dir nach dem Erstellen des Users, dieses zurück liefern lässt. Damit reduzierst du Traffic

sowas wie
const newUser = await response.json();
userList = [...userList, newUser];

Performanter wäre es wenn du dir nach dem Erstellen des Users, dieses zurück liefern lässt. Damit reduzierst du Traffic sowas wie const newUser = await response.json(); userList = [...userList, newUser];
trachi93 marked this conversation as resolved
@@ -0,0 +65,4 @@
}, 5000);
}
async function deleteUser(userId: string) {
Owner

try catch

try catch
trachi93 marked this conversation as resolved
@@ -0,0 +26,4 @@
const rowCount = addUser(userName, userPassword);
return new Response(null, { status: rowCount == 1 ? 200 : 400 });
Owner

status code für created ist 201

status code für created ist 201
trachi93 marked this conversation as resolved
trachi93 added 4 commits 2025-08-21 10:53:10 +02:00
jared merged commit e3f4a97772 into development 2025-08-21 11:08:45 +02:00
jared deleted branch f052_admin_area 2025-08-21 11:08:45 +02:00
Sign in to join this conversation.
No Reviewers
No Label
2 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: innohub/tatort#27