Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
| modul:m290_guko:learningunits:lu16:theorie:b_update_delete [2025/12/18 13:39] – gkoch | modul:m290_guko:learningunits:lu16:theorie:b_update_delete [2026/01/02 23:06] (aktuell) – gkoch | ||
|---|---|---|---|
| Zeile 50: | Zeile 50: | ||
| } | } | ||
| - | // Neue Werte aus dem Body lesen | + | // Alle Felder werden erwartet (PUT ersetzt alles) |
| - | const userId | + | const user_id |
| const title = req.body.title; | const title = req.body.title; | ||
| - | const imageUrl | + | const image_url |
| const description = req.body.description; | const description = req.body.description; | ||
| const likes = req.body.likes; | const likes = req.body.likes; | ||
| - | // Validierung: | + | // Validierung: |
| + | // likes kann 0 sein -> deshalb auf undefined prüfen | ||
| if ( | if ( | ||
| - | | + | |
| - | title === undefined | + | title === undefined |
| - | | + | |
| - | description === undefined | + | description === undefined |
| likes === undefined | likes === undefined | ||
| ) { | ) { | ||
| - | return res.status(400).send(' | + | return res.status(400).send(' |
| } | } | ||
| - | // Update nur für Felder, die wirklich geschickt wurden | + | // Post überschreiben |
| - | | + | post.user_id = user_id; |
| - | | + | post.title = title; |
| - | | + | post.image_url = image_url; |
| - | if (title !== undefined) { | + | post.description = description; |
| - | | + | post.likes = likes; |
| - | | + | |
| - | if (imageUrl !== undefined) { | + | |
| - | | + | |
| - | | + | |
| - | if (description !== undefined) { | + | |
| - | | + | |
| - | | + | |
| - | if (likes !== undefined) { | + | |
| - | | + | |
| - | } | + | |
| // Antwort: 200 OK + aktualisiertes Objekt | // Antwort: 200 OK + aktualisiertes Objekt | ||
| Zeile 92: | Zeile 84: | ||
| ==== Test mit Postman (PUT) ==== | ==== Test mit Postman (PUT) ==== | ||
| + | |||
| + | {{: | ||
| - Methode: '' | - Methode: '' | ||
| Zeile 150: | Zeile 144: | ||
| ==== Test mit Postman (DELETE) ==== | ==== Test mit Postman (DELETE) ==== | ||
| + | |||
| + | {{: | ||
| - Methode: '' | - Methode: '' | ||