3. Ressourcen REST - JasminaCej/WBA2SS17GaygizisCejvanovicYilmaz GitHub Wiki

3. Ressourcen / REST

Zu Beginn des Projektes wurden zum System passende Ressourcen erarbeitet. Daraufhin wurden anhand der Architektur Representational State Transfer (REST) die Anforderungen übersichtlich veranschaulicht.
Hierin sind die definierten Ressourcen, deren Methoden und deren Semantik spezifiziert.

Ressourcen unseres Systems sind: Einkaufsliste, User/Nutzer, Localization und Event.

Methoden:

GET= lesend auf Ressourcen zugreifen

POST= neue Ressource erstellen

PUT= Ressource bearbeiten

DELETE= Ressource löschen

Die End-Architektur

Die alte Architektur

Status Codes

Vor der Implementierung wurden mehrere HTTP Status Codes ausgewählt. Während der Implementierung stellte sich heraus, dass eine Untermenge der Status Codes zur Implementierung ausreichend war. Die wichtigsten Status Codes wurden zur Implementierung herangezogen.

Ausgewählte Status Codes vor der Implementierung

Get = 200 OK / 100 Continue / 404 NOT FOUND / 102 Processing / 204 No Content / 301 Moved Permanently / 303 See Other / 400 Bad Request / 401 Unauthorized / 403 Forbidden / 404 Not Found / 405 Not Allowed / 406 Not Acceptable / 410 Gone / failed / 416 Requested Range Not Satisfiable / 500 Server Error / 502 Bad Gateway

Post = 100 Continue /404 NOT FOUND / 400 BAD REQUEST / 201 Created / 202 Accept / 401 Unauthorized / 403 Forbidden / 404 Not Found / 405 Not Allowed / 414 Request URI too long / 415 Unsupported Type / 500 Server Error / 501 Not Implemented / 502 Bad Gateway

Put = 200 OK / 404 NOT FOUND / 400 BAD REQUEST / 202 Accepted / 204 No Content / 401 Unauthorized / 403 Forbidden / 404 Not Found / 405 Not Allowed/ 409 Resource Conflict / 410 Gone / 414 Request URI too long / 415 Unsupported Type / 500 Server Error / 501 Not Implemented / 502 Bad Gateway

Delete = 200 OK / 400 BAD REQUEST / 202 Accepted / 204 No Content / 403 Forbidden / 404 Not Found / 405 Not Allowed / 409 Resource Conflict / 501 Not Implemented / 502 Bad Gateway

Zur Implementierung verwendete Status Codes

Get = 400 BAD REQUEST / 403 FORBIDDEN / 405 NOT ALLOWED / 406 NOT ACCEPTABLE

Post = 400 BAD REQUEST / 401 UNAUTHORIZED / 409 RESOURCE CONFLICT

Put = 400 BAD REQUEST / 403 FORBIDDEN / 404 NOT FOUND

Delete = 400 BAD REQUEST / 403 FORBIDDEN / 404 NOT FOUND