rest api response codes
Σε αυτό το σεμινάριο, θα μάθουμε για διαφορετικούς κωδικούς απόκρισης REST, τύπους αιτημάτων REST και ορισμένες βέλτιστες πρακτικές που πρέπει να ακολουθηθούν :
Στο προηγούμενο σεμινάριο, REST API Architecture And Constraints, μάθαμε για υπηρεσίες Ιστού, REST Architecture, POSTMAN κ.λπ.
Για περισσότερες πληροφορίες σχετικά με αυτό, ανατρέξτε στον πρώτο οδηγό REST API.
Κάθε φορά που κάνετε αναζήτηση οποιασδήποτε λέξης ή φράσης σε μια μηχανή αναζήτησης, η μηχανή αναζήτησης στέλνει το αίτημα στον διακομιστή ιστού. Ο διακομιστής ιστού επιστρέφει έναν τριψήφιο κωδικό απόκρισης που υποδεικνύει την κατάσταση του αιτήματος.
Τι θα μάθετε:
- Υπόλοιποι κωδικοί απόκρισης API
- Διαφορετικός τύπος αιτήσεων REST
- Βέλτιστες πρακτικές κατά την επικύρωση ενός REST API
- συμπέρασμα
Υπόλοιποι κωδικοί απόκρισης API
Ακολουθούν ορισμένα δείγματα κωδικών απόκρισης που κανονικά θα βλέπουμε κατά τη διεξαγωγή δοκιμών REST API μέσω POSTMAN ή μέσω οποιουδήποτε πελάτη REST API.
# 1) 100 σειρές
Αυτές είναι προσωρινές απαντήσεις
- 100 Συνέχεια
- 101 Πρωτόκολλα εναλλαγής
- 102 Επεξεργασία
# 2) 200 σειρές
Ο πελάτης αποδέχεται την Αίτηση, με επιτυχία την επεξεργασία στον διακομιστή.
ερωτήσεις συνέντευξης προγραμματισμού java για έμπειρους
- 200 - ΟΚ
- 201 - Δημιουργήθηκε
- 202 - Αποδεκτό
- 203 - Μη εξουσιοδοτημένες πληροφορίες
- 204 - Χωρίς περιεχόμενο
- 205 - Επαναφορά περιεχομένου
- 206 - Μερικό περιεχόμενο
- 207 - Πολλαπλή κατάσταση
- 208 - Έχει ήδη αναφερθεί
- 226 - Μεταχειρισμένο IM
# 3) Σειρά 300
Οι περισσότεροι από τους κωδικούς που σχετίζονται με αυτήν τη σειρά είναι για ανακατεύθυνση διευθύνσεων URL.
- 300 - Πολλές επιλογές
- 301 - Μετακινήθηκε μόνιμα
- 302 - Βρέθηκε
- 303 - Έλεγχος άλλου
- 304 - Δεν τροποποιήθηκε
- 305 - Χρήση διακομιστή μεσολάβησης
- 306 - Εναλλαγή διακομιστή μεσολάβησης
- 307 - Προσωρινή ανακατεύθυνση
- 308 - Μόνιμη ανακατεύθυνση
# 4) Σειρά 400
Αυτά είναι συγκεκριμένα για σφάλμα πελάτη.
- 400 - Κακό αίτημα
- 401 - Μη εξουσιοδοτημένο
- 402 - Απαιτείται πληρωμή
- 403 απαγορευμένο
- 404 δεν βρέθηκε
- 405 - Δεν επιτρέπεται η μέθοδος
- 406 - Μη αποδεκτό
- 407 - Απαιτείται έλεγχος ταυτότητας διακομιστή μεσολάβησης
- 408 - Αίτημα χρονικού ορίου
- 409 - Σύγκρουση
- 410 - Έφυγε
- 411 - Απαιτείται μήκος
- 412 - Η προϋπόθεση απέτυχε
- 413 - Ωφέλιμο φορτίο πολύ μεγάλο
- 414 - Πολύ μεγάλο URI
- 415 - Μη υποστηριζόμενος τύπος πολυμέσων
- 416 - Εύρος που δεν ικανοποιεί
- 417 - Η προσδοκία απέτυχε
- 418 - Είμαι τσαγιέρα
- 421 - Αίτημα λανθασμένης κατεύθυνσης
- 422 - Μη επεξεργάσιμη οντότητα
- 423 - Κλειδωμένο
- 424 - Αποτυχημένη εξάρτηση
- 426 - Απαιτείται αναβάθμιση
- 428 - Απαιτείται προϋπόθεση
- 429 - Πάρα πολλά αιτήματα
- 431 - Αίτημα για πεδία κεφαλίδας πολύ μεγάλα
- 451 - Μη διαθέσιμο για νομικούς λόγους
# 5) 500 σειρές
Αυτά είναι ειδικά για το σφάλμα διακομιστή.
- 500 Εσωτερικό σφάλμα διακομιστή
- 501 - Δεν εφαρμόζεται
- 502 - Bad Gateway
- 503 Υπηρεσία Μη Διαθέσιμη
- 504 - Χρονικό όριο Gateway
- 505 - Η έκδοση HTTP δεν υποστηρίζεται
- 506 - Η παραλλαγή διαπραγματεύεται επίσης
- 507 - Ανεπαρκής αποθήκευση
- 508 - Εντοπίστηκε βρόχος
- 510 - Χωρίς επέκταση
- 511 - Απαιτείται έλεγχος ταυτότητας δικτύου
Εκτός από αυτό, υπάρχουν πολλοί διαφορετικοί κωδικοί που υπάρχουν, αλλά αυτοί θα μας αποκλίνουν από την τρέχουσα συζήτησή μας.
Διαφορετικός τύπος αιτήσεων REST
Εδώ θα συζητήσουμε κάθε μέθοδο του REST API μαζί με τις συλλογές.
Μέθοδος | Περιγραφή |
---|---|
ΚΗΛΙΔΑ | Πολύ παρόμοιο με αυτό, αλλά μοιάζει περισσότερο με έναν μικρό χειρισμό του περιεχομένου των πόρων |
ΠΑΙΡΝΩ | Λήψη γραμμής κατάστασης, σώμα απόκρισης, κεφαλίδα κ.λπ. |
ΚΕΦΑΛΙ | Το ίδιο με το GET, αλλά μόνο τη γραμμή κατάστασης και την ενότητα κεφαλίδας |
ΘΕΣΗ | Εκτελέστε αίτηση χρησιμοποιώντας ωφέλιμο φορτίο αιτήματος κυρίως στη δημιουργία μιας εγγραφής στο διακομιστή |
ΒΑΖΩ | Χρήσιμο για χειρισμό / ενημέρωση του πόρου χρησιμοποιώντας το Request payload |
ΔΙΑΓΡΑΦΩ | Διαγράφει πληροφορίες σχετικά με τον πόρο προορισμού. |
ΕΠΙΛΟΓΕΣ | Περιγράψτε τις επιλογές επικοινωνίας για τον πόρο προορισμού |
Σημείωση: Υπάρχουν τόσες πολλές μέθοδοι, τις οποίες μπορούμε να κάνουμε χρησιμοποιώντας το POSTMAN, αλλά θα συζητήσουμε μόνο τις ακόλουθες μεθόδους χρησιμοποιώντας το POSTMAN.
Θα χρησιμοποιήσουμε ένα πλαστό URL για να το δείξουμε http://jsonplaceholder.typicode.com . Αυτή η διεύθυνση URL θα μας δώσει τις επιθυμητές απαντήσεις αλλά δεν θα υπάρξει καμία δημιουργία, τροποποίηση στο διακομιστή.
# 1) ΠΑΡΤΕ
Αίτημα παραμέτρων:
Μέθοδος: GET
Αίτημα URI: http://jsonplaceholder.typicode.com/posts
Παράμετρος ερωτήματος: id = 3;
Λήφθηκε απάντηση:
Κωδικός κατάστασης απόκρισης: 200 ΟΚ
Σώμα απόκρισης :
# 2) ΚΕΦΑΛΙ
Αίτημα παραμέτρων:
Μέθοδος: HEAD
Αίτημα URI: http://jsonplaceholder.typicode.com/posts
# 3) ΜΕΤΑΦΟΡΑ
# 4) ΑΠΟΣΤΟΛΗ
# 5) ΕΠΙΛΟΓΕΣ
Αίτημα παραμέτρων:
Μέθοδος: ΕΠΙΛΟΓΕΣ
Αίτημα URI: http://jsonplaceholder.typicode.com/
Κεφαλίδες: Τύπος περιεχομένου = Εφαρμογή / JSON
αρχικοποίηση στατικών μεταβλητών c ++
# 6) ΠΑΤΣΑ
Βέλτιστες πρακτικές κατά την επικύρωση ενός REST API
# 1) Λειτουργίες CRUD
Αποτελούνται από τουλάχιστον 4 μεθόδους που παρέχονται και πρέπει να λειτουργούν στο Web API.
ΛΗΨΗ, ΑΝΑΚΟΙΝΩΣΗ, ΑΠΟΣΤΟΛΗ ΚΑΙ ΔΙΑΓΡΑΦΗ.
# 2) Χειρισμός σφαλμάτων
Πιθανές συμβουλές για τους καταναλωτές API σχετικά με το σφάλμα και γιατί συνέβη. Θα πρέπει επίσης να παρέχει μηνύματα σφάλματος σε κοκκώδες επίπεδο.
# 3) Εκδόσεις API
Χρησιμοποιήστε το γράμμα «v» στη διεύθυνση URL για να δηλώσετε την έκδοση API. Για παράδειγμα-
http://restapi.com/api/v3/passed/319
Πρόσθετη παράμετρος στο τέλος του URL
http://restapi.com/api/user/invaiiduser?v=6.0
# 4) Φιλτράρισμα
Επιτρέποντας στον χρήστη να καθορίσει, επιλέξτε τα επιθυμητά δεδομένα αντί να τα παρέχει όλα ταυτόχρονα.
/ επικοινωνία / sam; όνομα, ηλικία, διορισμός, γραφείο
/ Επαφές? όριο = 25 & όφσετ = 20
# 5) Ασφάλεια
Χρονική σήμανση σε κάθε Αίτημα και απάντηση API. Χρήση του access_token για να βεβαιωθείτε ότι το API καλείται από τα μέρη εμπιστοσύνης.
ποια είναι τα στάδια του sdlc
# 6) Ανάλυση
Έχοντας το Analytics στο REST API σας θα έχετε μια καλή εικόνα του API υπό δοκιμή, ειδικά όταν ο αριθμός των εγγραφών που έχετε πάρει είναι πολύ υψηλός.
# 7) Τεκμηρίωση
Πρέπει να παρέχεται κατάλληλη τεκμηρίωση, ώστε οι καταναλωτές API να μπορούν να το χρησιμοποιούν και να καταναλώνουν αποτελεσματικά τις υπηρεσίες.
# 8) Δομή διεύθυνσης URL
Η δομή διεύθυνσης URL πρέπει να παραμείνει απλή και ένας χρήστης θα πρέπει να μπορεί να διαβάζει εύκολα το όνομα τομέα πάνω από αυτό.
Για παράδειγμα , https://api.testdomain.com.
Οι λειτουργίες που πρέπει να εκτελούνται μέσω του API ανάπαυσης θα πρέπει επίσης να είναι πολύ εύκολα κατανοητές και να εκτελούνται.
Για παράδειγμα, για πελάτη ηλεκτρονικού ταχυδρομείου:
ΠΑΙΡΝΩ: read / inbox / messages - Ανακτά τη λίστα όλων των μηνυμάτων στα εισερχόμενα
ΠΑΙΡΝΩ: read / inbox / messages / 10 - Διαβάζει 10ουμήνυμα στα εισερχόμενα
ΘΕΣΗ: create / inbox / folder - Δημιουργία νέου φακέλου κάτω από τα εισερχόμενα
ΔΙΑΓΡΑΦΩ: Διαγραφή / spam / μηνύματα - Διαγραφή όλων των μηνυμάτων στον φάκελο spam
ΒΑΖΩ: φακέλοι / εισερχόμενα / υποφάκελοι - Ενημερώστε τις πληροφορίες σχετικά με τον υποφάκελο στα εισερχόμενα.
συμπέρασμα
Πολλοί οργανισμοί προτιμούν να εφαρμόζουν το REST Web API, καθώς είναι πολύ εύκολο να εφαρμοστούν, έχουν λιγότερα πρότυπα και κανόνες που πρέπει να ακολουθούνται, εύκολο στην πρόσβαση, ελαφρύ και εύκολο στην κατανόηση. Το POSTMAN έχει τα πλεονεκτήματά του όταν χρησιμοποιείται με το RESTful API λόγω της φιλικής προς το χρήστη διεπαφής χρήστη, της ευκολίας χρήσης και της δοκιμής, του ταχύτερου ρυθμού απόκρισης και της νέας λειτουργίας RUNNER.
Στο επόμενο σεμινάριο σε αυτήν τη σειρά Tutorial Rest API, θα αυτοματοποιήσουμε τις δοκιμαστικές περιπτώσεις που έχουμε εκτελέσει χειροκίνητα.
Συνιστώμενη ανάγνωση
- Πώς να αυτοματοποιήσετε αιτήματα API χρησιμοποιώντας το υπόλοιπο και το Jenkins
- Δοκιμή REST API με αγγούρι με προσέγγιση BDD
- 10 καλύτερα εργαλεία δοκιμών API το 2021 (SOAP και REST API Testing Tools)
- Δοκιμή REST API με Spring RestTemplate και TestNG
- Τρόπος δημιουργίας έργου REST στο SoapUI Pro: Tutorial # 13
- Εργασία με αιτήματα HTTP στο JMeter
- Τύποι κινδύνων σε έργα λογισμικού
- SOAP Vs REST Διαφορά: Σύγκριση απόδοσης και ασφάλειας