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

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

Δημοσ.

Καλησπερα

 

Ειμαι νεος στο node.js , διαβαζω tutorials και εχω μπερδευτει με τη λογικη του να σερβιρεις αρχεια. Εχω συνηθισει με apache και τα node.js/express.js με δυσκολευουν

 

Σε Link.png Site: αυτο το tutorial χρησιμοποιει τα routes για να παρει/δωσει δεδομενα στη ΒΔ. Αλλα στην αρχη, στο "PART 2 – OK, FINE, LET'S DO "HELLO, WORLD!" αλλαζει το ...\ROUTES\INDEX.JS για να σερβιρει ενα απλο αρχειο html

 

Στο βιβλιο Jump Start Node.js by Don Nguyen Copyright © 2012 SitePoint Pty. Ltd. κεφαλαιο 1 , δε χρησιμοποιει routes αλλα προσθετει μεθοδους στο app.js και γραφει δικα του modules για να αποθηκευσει δεδομενα στη ΒΔ. Ξανα στην αρχη, προσθετει μια get στο app.js για να σερβιρει ενα απλο αρχειο html.

 

Οκ, παμε λιγο...

 

  1. Δεν μπορω να βαλω ολα τα αρχεια μου στον φακελο public και να τα σερβιρω απο κει? Και να αλλαξω μετα ειτε τα routes ειτε το app.js? Ετσι και αλλιως εχουν το ιδιο url , ειτε με τον ενα τροπο ειτε με τον αλλο. *(Δηλαδη μεσω Localhost:3000/form θα βρω τη φορμα ειτε εχω βαλει το αρχειο στο public ειτε στα routes)
  2. Αν εχω 50 αρχεια πρεπει να γραψω 50 παρομοιες συναρτησεις/αλλαγες ειτε στα routes ειτε στο app.js αναλογα με το τι τροπο θ' ακολουθησω? Λιγο υπερβολικο δεν ειναι?
  3. Ποια η διαφορα αναμεσα στις 2 παραπανω μεθοδους, αφου ιδιο αποτελεσμα εχουν? 
  4. Υπαρχουν συγκεκριμενες περιπτωσεις που χρησιμοποιουμε την μια η την αλλη?
  5. Ποια ειναι η καλυτερη?

 

Ευχαριστω πολυ

Δημοσ.

Μπορω ηδη να σερβιρω απλα html απο τον node χρησιμοποιωντας το express.js και τον φακελο public.

Το θεμα μου ειναι οτι δε μπορω να καταλαβω γιατι δε μπορω να εχω ολα τα αρχεια μου εκει και να κανω edit τα app.js ή τα routes (αναλογα με το ποια μεθοδο ακολουθω).

Επισης δε ξερω διαφορες και που χρησιμοποιουνται αυτες οι μεθοδοι (app.js ή routes)

Επισης θα πρεπει να κανω 500 edit αν εχω 500 αρχεια, κατι που μου φαινετε λιγο υπερβολικο

Δημοσ.

Στο tutorial σου γραφει

 

Note also that the final line is telling Express to serve static objects from the /public/ dir, but to make them actually seem like they're coming from the top level (it also does this with the views directory). For example, the images directory is c:\node\nodetest1\public\images … but it is accessed at http://localhost:3000/images

 

Δε σε καλύπτει; Δε χρειαζεται να εχεις route για καθε αρχειο. Το να μην ειναι ολα στο public ειναι για διαφορους λογους οργανωσης ,αρχιτεκτονικης και ασφαλειας.Γενικα το routes ειναι για τις διαδρομές . Αν έχεις 500 "λειτουργίες" θα πρεπει να βαλεις 500 αλλα πιστευω θα υπάρχουν και κολπα αν μεγαλώσει τόσο πολυ πχ regex patterns κτλ.


Y.Γ δεν ειμαι σιγουρος αν καταλαβα αλλα χρειαζονται τα routes και πλεον σχεδον ολα τα frameworks χρησιμοποιουν routes. Οι λογοι πολλοι. Για παραδειγμα μπορεις να ορισεις μια ομάδα routes πχ /admin τα οποια να πρεπει να έχουν https πχ. Η να βαλεις πιο πολυπλοκα φιλτρα , να κανεις αλλαγες χωρις να αλλαζεις ονοματα αρχείων. Οποτε το να πετας απλα αρχεια και να τρεχουν δε παιζει εκτος αν ειναι απλα στατικα οπως html κτλ. 

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

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

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

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

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

Σύνδεση

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

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