k33theod Δημοσ. 13 Σεπτεμβρίου 2017 Δημοσ. 13 Σεπτεμβρίου 2017 Γεια σας διαβάζω ένα βιβλίο για το web framework django https://djangobook.c...orm-validation/ και κάνει κάποια πράγματα για form validation στο backend. Συγκεκριμένα εξετάζει αν μία φόρμα στέλνει κενό πεδίο ή αν έχει περισσότερους από 20 χαρακτήρες. Παράδειγμα για να μάθεις είναι βέβαια, ωστόσο ρωτάω μήπως κάνω και λάθος. Αυτό δεν πρέπει 'κανονικά' να γίνεται στον browser με javascript; Γενικότερα, χρειάζεται να εμπλακεί το backend σε πράγματα που μπορούν να γίνουν στον browser;
NickSym Δημοσ. 13 Σεπτεμβρίου 2017 Δημοσ. 13 Σεπτεμβρίου 2017 Παίζουν ρόλο διάφοροι παράγοντες. Ενδεικτικά: 1. Αν θες να φορτώσεις με περισσότερα tasks τον browser ή όχι. 2. Το τι ζητάς από το validation. Π.χ αν θες να σε κάνει redirect κάπου σε περίπτωση λάθος(ή να κάνεις συνολικό έλεγχο της φόρμας) ή κατά την συμπλήρωση της ώστε να εμφανίζει τυχόν λάθη αμέσως..
defacer Δημοσ. 13 Σεπτεμβρίου 2017 Δημοσ. 13 Σεπτεμβρίου 2017 Ποτέ δε βασίζεσαι στο user agent να σου κάνει validation, πολύ απλά γιατί μπορεί ο άλλος να το παρακάμψει. Και αν δε σε πειράζει που θα το παρακάμψει, τότε γιατί υπάρχει in the first place? Από τη στιγμή που θα κάνεις έτσι κι αλλιώς στο server από την άλλη, μπορείς να κάνεις και στον client για καλύτερο UX. 2
k33theod Δημοσ. 13 Σεπτεμβρίου 2017 Μέλος Δημοσ. 13 Σεπτεμβρίου 2017 Βάζω και την απάντηση του IIias95 μήπως σβήστει το θέμα στο 'προγραμματισμός' Ποτέ δεν μπορείς να εμπιστευτείς το input που θα φτάσει στον server. Δεν ξέρεις πώς θα γίνει το request. Μπορεί να μην γίνει μέσω browser ή μπορεί να μην υπάρχει Javascript, κτλ. All input is evil! Οπότε ναι, όπου χρειάζεται κάνεις validation και στο frontend (για να μην χτυπάς άσκοπα τον server στο 99% των περιπτώσεων) και στο backend (σε περίπτωση που κάτι περάσει από πριν να είσαι καλυμμένος). Ευχαριστώ όλους νομίζω με καλύψατε.
tsofras Δημοσ. 13 Σεπτεμβρίου 2017 Δημοσ. 13 Σεπτεμβρίου 2017 Μην ξεχνάς επίσης ότι μπορεί να υλοποιήσεις κάτι και να το βγάλεις και ώς web service κρατώντας κοινό τον κώδικα άσχετα αν γίνεται η κλήση του απο το UI. Οπότε έτσι είσαι σίγουρος ότι γίνονται και τα validations εκεί που χρειάζεται.
Προτεινόμενες αναρτήσεις
Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε
Πρέπει να είστε μέλος για να αφήσετε σχόλιο
Δημιουργία λογαριασμού
Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!
Δημιουργία νέου λογαριασμούΣύνδεση
Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.
Συνδεθείτε τώρα