-
Notifications
You must be signed in to change notification settings - Fork 1
CustomerController: POST
Für einen POST-Request übergibt man der API ID´s für die Adresse oder die Eigenschaften.
Beispiel für das erstellen eines Customers (POST: /api/customer
):
Payload des POST-Requests:
{
"firstname": "Max",
"lastname": "Mustermann",
"address": {
"street": "Straße 123",
"zip": "11111",
"city": "Stadt"
}
}
Bei erfolgreichem Request sendet der Server folgenden Response:
HTTP: 201 Created
Response Body:
{
"id": 4,
"firstname": "Max",
"lastname": "Mustermann",
"createdAt": "2020-05-31T17:16:19.758224Z",
"addressId": 6
}
Response Header:
Unter location
kann die erstellte Ressource abgefragt werden.
content-length: 106
content-type: application/json; charset=utf-8
date: Sun, 31 May 2020 17:16:20 GMT
location: https://localhost:5001/api/Customer/4
server: Kestrel
Bei Änderungen an Ressourcen muss immer die ganze Ressource mitgeschickt werden, nicht nur einzelne Teile.
Für alle Controller gilt: Existiert ein Objekt schon, reicht die ID. Falls das Objekt verändert werden soll, sendet man die ID + alle Properties des Objektes. Soll ein Objekt erstellt werden, lässt man die ID null.
Spezialfall OrderController: Wenn ihr zu viel Properties dem Controller sendet, werden diese ignoriert, es löst keinen Fehler aus, so kann also direkt das Objekt welches von GET kommt bearbeitet und an PUT gesendet werden !