Προς το περιεχόμενο

error handling


Προτεινόμενες αναρτήσεις

Δημοσ.

Γεια σας


 


διαβάζω ένα βιβλίο για το web framework  django https://djangobook.c...orm-validation/


 


και κάνει κάποια πράγματα για form validation στο backend. Συγκεκριμένα εξετάζει αν μία φόρμα στέλνει κενό πεδίο ή αν έχει περισσότερους από 20 χαρακτήρες.


 


Παράδειγμα για να μάθεις είναι βέβαια, ωστόσο ρωτάω μήπως κάνω και λάθος. Αυτό δεν πρέπει 'κανονικά' να γίνεται στον browser με javascript;


Γενικότερα, χρειάζεται να εμπλακεί το backend σε πράγματα που μπορούν να γίνουν στον browser;


 


Δημοσ.

Παίζουν ρόλο διάφοροι παράγοντες. Ενδεικτικά:

1. Αν θες να φορτώσεις με περισσότερα tasks τον browser ή όχι.

2. Το τι ζητάς από το validation. Π.χ αν θες να σε κάνει redirect κάπου σε περίπτωση λάθος(ή να κάνεις συνολικό έλεγχο της φόρμας) ή κατά την συμπλήρωση της ώστε να εμφανίζει τυχόν λάθη αμέσως..

Δημοσ.

Ποτέ δε βασίζεσαι στο user agent να σου κάνει validation, πολύ απλά γιατί μπορεί ο άλλος να το παρακάμψει. Και αν δε σε πειράζει που θα το παρακάμψει, τότε γιατί υπάρχει in the first place?

 

Από τη στιγμή που θα κάνεις έτσι κι αλλιώς στο server από την άλλη, μπορείς να κάνεις και στον client για καλύτερο UX.

  • Like 2
Δημοσ.

Βάζω και την απάντηση του IIias95 μήπως σβήστει το θέμα στο 'προγραμματισμός'

 

 

Ποτέ δεν μπορείς να εμπιστευτείς το input που θα φτάσει στον server. Δεν ξέρεις πώς θα γίνει το request. Μπορεί να μην γίνει μέσω browser ή μπορεί να μην υπάρχει Javascript, κτλ. All input is evil! Οπότε ναι, όπου χρειάζεται κάνεις validation και στο frontend (για να μην χτυπάς άσκοπα τον server στο 99% των περιπτώσεων) και στο backend (σε περίπτωση που κάτι περάσει από πριν να είσαι καλυμμένος).

 
Ευχαριστώ όλους νομίζω με καλύψατε.
Δημοσ.

Μην ξεχνάς επίσης ότι μπορεί να υλοποιήσεις κάτι και να το βγάλεις και ώς web service κρατώντας κοινό τον κώδικα άσχετα αν γίνεται η κλήση του απο το UI. Οπότε έτσι είσαι σίγουρος ότι γίνονται και τα validations εκεί που χρειάζεται.

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα
  • Δημιουργία νέου...