Sobes.tech
Junior

Τι είναι το REST API;

sobes.tech AI

Απάντηση από AI

REST API είναι ένα αρχιτεκτονικό στυλ, όχι ένα πρότυπο, για την κατασκευή κατανεμημένων συστημάτων. Βασίζεται σε αρχές όπως η χωρίς κατάσταση (statelessness), η αρχιτεκτονική πελάτη-εξυπηρετητή και η χρήση τυπικών μεθόδων HTTP (GET, POST, PUT, DELETE, PATCH) για λειτουργίες πάνω σε πόρους.

Βασικές αρχές του REST:

  • Χωρίς κατάσταση (stateless): Ο διακομιστής δεν αποθηκεύει πληροφορίες σχετικά με την κατάσταση του πελάτη μεταξύ των αιτημάτων. Κάθε αίτημα περιέχει όλες τις απαραίτητες πληροφορίες.
  • Πελάτης-Εξυπηρετητής: Ξεκάθαρος διαχωρισμός μεταξύ πελάτη και διακομιστή. Κάθε ένας μπορεί να εξελίσσεται ανεξάρτητα.
  • Μπορεί να αποθηκευτεί στην cache: Οι απαντήσεις μπορούν να σημειωθούν ως cacheable ή όχι, βελτιώνοντας την απόδοση.
  • Πολυεπίπεδο σύστημα: Ο πελάτης δεν μπορεί να γνωρίζει αν συνδέεται άμεσα με τον διακομιστή ή μέσω ενδιάμεσων επιπέδων.
  • Ομοιόμορφη διεπαφή: Τυποποιημένοι τρόποι αλληλεπίδρασης με πόρους. Περιλαμβάνει:
    • Αναγνώριση πόρων (URI)
    • Διαχείριση πόρων μέσω αναπαραστάσεων
    • Αυτό-περιγραφόμενα μηνύματα
    • Hypermedia ως ο κινητήρας της κατάστασης της εφαρμογής (HATEOAS) - η κατάσταση της εφαρμογής διαχειρίζεται μέσω υπερσυνδέσμων.

Παραδείγματα χρήσης τυπικών μεθόδων HTTP:

Μέθοδος HTTP Ενέργεια πάνω στον πόρο (π.χ., /users) Περιγραφή
GET /users ή /users/{id} Ανάκτηση λίστας χρηστών ή συγκεκριμένου χρήστη.
POST /users Δημιουργία νέου χρήστη.
PUT /users/{id} Πλήρης ενημέρωση δεδομένων χρήστη με βάση το ID.
PATCH /users/{id} Μερική ενημέρωση δεδομένων χρήστη με βάση το ID.
DELETE /users/{id} Διαγραφή χρήστη με βάση το ID.

Το REST API χρησιμοποιείται για την αλληλεπίδραση μεταξύ διαφορετικών συστημάτων και εφαρμογών, π.χ., μεταξύ frontend και backend.