Junior — Middle
Μπορείτε να περιγράψετε τις βασικές αρχές που στηρίζουν τις υπηρεσίες RESTful;
sobes.tech AI
Απάντηση από AI
Βασικές αρχές των RESTful υπηρεσιών:
- Αρχιτεκτονική πελάτη-εξυπηρετητή — ο πελάτης και ο διακομιστής είναι διαχωρισμένοι, επιτρέποντας την ανεξάρτητη ανάπτυξή τους.
- Χωρίς κατάσταση (stateless) — κάθε αίτημα από τον πελάτη προς τον διακομιστή πρέπει να περιέχει όλες τις απαραίτητες πληροφορίες, ο διακομιστής δεν διατηρεί κατάσταση μεταξύ των αιτημάτων.
- Κρυπτογράφηση — οι απαντήσεις του διακομιστή πρέπει να δηλώνουν σαφώς αν μπορούν να αποθηκευτούν στην cache για βελτίωση της απόδοσης.
- Ομοιόμορφη διεπαφή — χρήση των τυπικών μεθόδων HTTP (GET, POST, PUT, DELETE) και σαφής ορισμός πόρων μέσω URI.
- Πολυεπίπεδο σύστημα — η αρχιτεκτονική μπορεί να έχει ενδιάμεσα διακομιστές (proxy, gateways) χωρίς να επηρεάζει την αλληλεπίδραση μεταξύ πελάτη και διακομιστή.
- Κώδικας κατ' αίτηση (προαιρετικό) — ο διακομιστής μπορεί να μεταδίδει εκτελέσιμο κώδικα (π.χ. scripts) στον πελάτη, αλλά αυτό χρησιμοποιείται σπάνια.
Παράδειγμα RESTful API:
- GET /users — λήψη λίστας χρηστών
- POST /users — δημιουργία νέου χρήστη
- PUT /users/123 — ενημέρωση χρήστη με ID 123
- DELETE /users/123 — διαγραφή χρήστη με ID 123