Sobes.tech
Middle

Ποιους κανόνες αρχιτεκτονικής REST γνωρίζετε;

sobes.tech AI

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

  1. Αρχιτεκτονική πελάτη-διακομιστή: Ξεκάθαρη διαχωρισμός των ευθυνών μεταξύ του πελάτη, που ζητά πόρους, και του διακομιστή, που τους παρέχει.
  2. Χωρίς κατάσταση (Stateless): Κάθε αίτημα από τον πελάτη προς τον διακομιστή πρέπει να περιέχει όλες τις απαραίτητες πληροφορίες για την κατανόηση και επεξεργασία του αιτήματος. Ο διακομιστής δεν αποθηκεύει πληροφορίες σχετικά με προηγούμενα αιτήματα του πελάτη.
  3. Μπορεί να αποθηκευτεί στην cache: Οι απαντήσεις από τον διακομιστή μπορούν να σημειωθούν ως cacheable ή όχι, επιτρέποντας στους πελάτες να επαναχρησιμοποιούν τις ληφθείσες απαντήσεις για βελτίωση της απόδοσης.
  4. Ομοιόμορφη διεπαφή: Τέσσερις περιορισμοί:
    • Ταυτοποίηση πόρων: Οι πόροι ταυτοποιούνται μέσω URI.
    • Διαχείριση πόρων μέσω αναπαραστάσεων: Ο πελάτης αλληλεπιδρά με τον πόρο μέσω της μετάδοσης αναπαραστάσεων.
    • Μηνύματα αυτοπεριγραφόμενα: Κάθε μήνυμα περιέχει αρκετές πληροφορίες για να κατανοηθεί πώς να επεξεργαστεί (π.χ., τύπος περιεχομένου).
    • HATEOAS (Hypermedia as the Engine of Application State): Ο πελάτης πλοηγείται μεταξύ πόρων ακολουθώντας συνδέσμους στις απαντήσεις του διακομιστή.
  5. Πολυεπίπεδο σύστημα: Η αρχιτεκτονική επιτρέπει τη χρήση ενδιάμεσων επιπέδων (π.χ., proxy, gateways) μεταξύ πελάτη και διακομιστή, χωρίς να επηρεάζει την αλληλεπίδρασή τους.
  6. Κώδικας κατ' αίτηση (προαιρετικό): Ο διακομιστής μπορεί προσωρινά να επεκτείνει ή να διαμορφώσει τη λειτουργικότητα του πελάτη μεταδίδοντας εκτελέσιμο κώδικα (π.χ., JavaScript). Είναι μια προαιρετική κανόνας.