Ένα GET μπορεί να πιστοποιηθεί μέσω διακομιστή μεσολάβησης, ενώ ένα POST ή PUT αποτυγχάνει με σφάλμα μη επαναλήψιμου σώματος ή επαναφοράς. Ο λογαριασμός μπορεί να είναι σωστός: μια ανταλλαγή ελέγχου ταυτότητας μπορεί να απαιτεί άλλο αίτημα αφού ο πελάτης έχει ήδη καταναλώσει τη μεταφόρτωση.

Πηγή σώματοςΕπιλογή επανάληψης
Μικρό πεπερασμένο σώμαΜια περιορισμένη προσωρινή μνήμη μπορεί να διατηρήσει τα byte του.
Αρχείο με δυνατότητα αναζήτησηςΗ υποστηριζόμενη από τον πελάτη διεπαφή επαναφοράς μπορεί να το κάνει επαναλήψιμο.
Γεννήτρια, σωλήνας ή ζωντανός παραγωγόςΜια πηγή μίας χρήσης μπορεί να απαιτεί άλλο σχεδιασμό.

Το libcurl τεκμηριώνει callbacks αναζήτησης για χρήσεις, συμπεριλαμβανομένου του ελέγχου ταυτότητας πολλαπλών περασμάτων. Το Jersey προσφέρει λειτουργίες επεξεργασίας οντοτήτων με προσωρινή μνήμη και κατακερματισμένες, ανάλογα με τη συμπεριφορά της υποδοχής. Ένα παράδειγμα υποδοχής Jersey 2 Apache δείχνει τη ρύθμιση με προσωρινή μνήμη. Κανένα από τα δύο δεν καθιστά κατάλληλες τις απεριόριστες μεταφορτώσεις στη μνήμη.

Αναπαράγετε τη μέθοδο και την πηγή σώματος που αποτυγχάνουν. Ένα προπαρασκευαστικό GET δεν έχει μεταφόρτωση για επανάληψη και δεν αποδεικνύει ότι μια μεταγενέστερη μεταφόρτωση μοιράζεται τη σύνδεση ή την κατάσταση ελέγχου ταυτότητάς του. Ένας νέος προορισμός, αντικείμενο πελάτη ή πολιτική σύνδεσης μπορεί να το αλλάξει. Ένα σώμα που βασίζεται σε αρχείο και μια ζωντανή ροή διαφέρουν επίσης ακόμη και όταν το δείγμα κειμένου τους είναι το ίδιο.

Αν χρησιμοποιείτε προσωρινή μνήμη, καθορίστε το όριο μεγέθους, τη θέση αποθήκευσης και τη διάρκεια ζωής της. Οι ταυτόχρονες μεταφορτώσεις πολλαπλασιάζουν το κόστος και τα ευαίσθητα δεδομένα παραμένουν όπου κρατείται η προσωρινή μνήμη.

Προληπτικός έλεγχος ταυτότητας σε γνωστό συμβατό διακομιστή μεσολάβησης μπορεί να αποφύγει μία αρχική πρόκληση. Δεν μπορεί να αποκλείσει κάθε μεταγενέστερο γύρο ελέγχου ταυτότητας, ανακατεύθυνση ή κλειστή σύνδεση που μπορεί να απαιτεί άλλη προσπάθεια.

Κρατήστε μαζί την απάντηση του διακομιστή μεσολάβησης, το σημείο κατανάλωσης του σώματος και το σφάλμα επανάληψης. Έπειτα διακρίνετε την επανάληψη πρωτοκόλλου από ένα αβέβαιο αποτέλεσμα εφαρμογής: μια υποβολή μπορεί να είχε επεξεργαστεί πριν χαθεί η απάντησή της. Ακολουθήστε τους κανόνες ταυτοδυναμίας του προορισμού πριν την ξαναστείλετε.

Σχετικά άρθρα