Node.js Tutorial - Ένας πλήρης οδηγός για αρχάριους



Αυτό το Node.js Tutorial θα μιλήσει για τη βασική αρχιτεκτονική, την εργασία και τις διάφορες ενότητες του Node.js. Θα δείξει επίσης μια πρακτική εφαρμογή των Node.js και Express.js.

Εάν έχετε ακούσει ποτέ για το Node.js τότε ίσως γνωρίζετε ότι είναι ένα από τα πιο εξέχοντα και ισχυρά πλαίσια της JavaScript. Από την κυκλοφορία του, συνέχισε να διατηρεί το περιθώριο στην αγορά πληροφορικής. Ακόμη και με την εισαγωγή νέων και ζωντανών σαν , , Meteor κ.λπ., η δημοτικότητα του Node.js δεν φαίνεται να σταματά ποτέ. Αναρωτιέστε γιατί; Λοιπόν, με τη βοήθεια αυτού του Node.js Tutorial, θα σας δώσω μια πλήρη εικόνα για αυτό. Λοιπόν, ετοιμαστείτε να ερωτευτείτε το Node.js.

Σε αυτό το Node.js Tutorial, θα συζητήσω τα παρακάτω θέματα:





Τι είναι το Node.js;

Το Node.js είναι ένα ισχυρό πλαίσιο που αναπτύχθηκε στις Η μηχανή JavaScript V8 του Chrome που μεταγλωττίζει το JavaScript απευθείας στον εγγενή κώδικα του μηχανήματος. Είναι ένα ελαφρύ πλαίσιο που χρησιμοποιείται για τη δημιουργία εφαρμογών ιστού από διακομιστή και επεκτείνει το API JavaScript για να προσφέρει τις συνήθεις λειτουργίες από την πλευρά του διακομιστή. Χρησιμοποιείται γενικά για την ανάπτυξη εφαρμογών μεγάλης κλίμακας, ειδικά για ιστότοπους ροής βίντεο, εφαρμογή μίας σελίδας και άλλες εφαρμογές ιστού. Node.js κάνει χρήση ενός μοντέλου I / O χωρίς αποκλεισμούς βάσει γεγονότων που το καθιστά σωστή επιλογή για εφαρμογές σε πραγματικό χρόνο που απαιτούν δεδομένα.

Όπως και άλλες γλώσσες προγραμματισμού, το node.js χρησιμοποιεί πακέτα και λειτουργικές μονάδες. Αυτές είναι οι βιβλιοθήκες που περιέχουν διάφορες λειτουργίες και εισάγονται από το npm (node ​​package manager) στον κώδικα μας και χρησιμοποιούνται στα προγράμματα. Μερικά από τα κύρια χαρακτηριστικά, που ορίζουν το Node.js παρατίθενται παρακάτω:



Χαρακτηριστικά του Node.js

  1. Ανοιχτή πηγή
    Το Node.js είναι μια άδεια MIT πλαισίου ανοιχτού κώδικα που υποστηρίζεται από μια τεράστια κοινότητα. Η κοινότητά της είναι αρκετά ενεργή έχει συμβάλει στην προσθήκη νέων δυνατοτήτων στις εφαρμογές Node.js.
  2. Απλό και γρήγορο
    Δεδομένου ότι το Node.js είναι ενσωματωμένο στη μηχανή JavaScript V8 του Google Chrome, οι βιβλιοθήκες του είναι ικανές για γρήγορη εκτέλεση κώδικα.
  3. Ασύγχρονη
    Όλες οι βιβλιοθήκες του Node.js είναι ασύγχρονες, πράγμα που σημαίνει ότι οι διακομιστές που βασίζονται στο Node.js δεν περιμένουν ποτέ ένα API να στείλει πίσω την απόκριση και να προχωρήσει στο επόμενο API.
  4. Υψηλή επεκτασιμότητα
    Λόγω του μηχανισμού συμβάντων, το Node.js είναι εξαιρετικά επεκτάσιμο και βοηθά τον διακομιστή σε μια απόκριση χωρίς αποκλεισμό.
  5. Μονό σπείρωμα
    Με τη βοήθεια του looping συμβάντων, το Node.js μπορεί να ακολουθήσει το μονόστροφο μοντέλο. Αυτό επιτρέπει σε ένα μόνο πρόγραμμα να χειρίζεται πολλαπλά αιτήματα.
  6. Χωρίς buffering
    Μία από τις σημαντικότερες λειτουργίες των εφαρμογών Node.js είναι ότι δεν αποθηκεύει ποτέ δεδομένα.
  7. Διαγώνια πλατφόρμα
    Το Node.js μπορεί να δημιουργηθεί και να αναπτυχθεί εύκολα σε διάφορες πλατφόρμες όπως τα Windows, MAC και Linux.

Ας προχωρήσουμε τώρα περαιτέρω και να δούμε πώς να αναπτύξουμε τον πραγματικό κώδικα στο πρόγραμμα περιήγησης. Αλλά πριν από αυτό, πρέπει να κάνετε λήψη και εγκατάσταση στα συστήματά σας. Μπορείτε να ανατρέξετε στο άλλο άρθρο μου για να μάθετε το πλήρες Διαδικασία εγκατάστασης Node.js .

Τώρα, ας προχωρήσουμε περαιτέρω σε αυτό το Node.js Tutorial, όπου θα μιλήσω για το πιο σημαντικό στοιχείο του Node.js, δηλαδή, npm.

NPM (Διαχειριστής πακέτων κόμβων)

Το NPM σημαίνει Node Package Manager το οποίο όπως υποδηλώνει το όνομα είναι διαχειριστής πακέτων για πακέτα / ενότητες Node.js. Από τον κόμβο έκδοση 0.6.0. και μετά, το npm έχει προστεθεί ως προεπιλογή στην εγκατάσταση του κόμβου. Σας σώζει από την ταλαιπωρία της εγκατάστασης npm ρητά.



Το NPM βοηθά βασικά με δύο τρόπους:

καλύτερο λογισμικό για προγραμματισμό java
  1. Παρέχει και φιλοξενεί ηλεκτρονικά αποθετήρια για πακέτα / ενότητες node.js τα οποία μπορούν εύκολα να ληφθούν και να χρησιμοποιηθούν στα έργα μας. Μπορείτε να τα βρείτε εδώ: npmjs.com
  2. Παρέχει το βοηθητικό πρόγραμμα γραμμής εντολών για να εγκαταστήσετε διάφορα πακέτα Node.js, να διαχειριστείτε εκδόσεις Node.js και εξαρτήσεις των πακέτων.

Αλλά τώρα, πρέπει να αναρωτιέστε τι ακριβώς είναι αυτές οι ενότητες και πώς μας βοηθούν στη δημιουργία των εφαρμογών Node.js. Λοιπόν, στην επόμενη ενότητα αυτού του οδηγού Node.js, θα σας δώσω μια πλήρη εικόνα για τις ενότητες Node.js.

Ενότητες Node.js

Οι ενότητες στο Node.js αντιπροσωπεύουν διάφορες λειτουργίες που ομαδοποιούνται σε μεμονωμένα ή πολλαπλά αρχεία JS. Αυτές οι ενότητες έχουν ένα μοναδικό πλαίσιο, επομένως, δεν παρεμβαίνουν ούτε μολύνουν το πεδίο εφαρμογής άλλων ενοτήτων.

Αυτές οι μονάδες επιτρέπουν την επαναχρησιμοποίηση του κώδικα και ενισχύουν την ευκολία χρήσης. Το Node.js παρέχει βασικά τρεις τύπους ενοτήτων:

  1. Βασικές ενότητες
  2. Τοπικές ενότητες
  3. Ενότητες τρίτων

Βασική ενότητα

Δεδομένου ότι το Node.js είναι πολύ πυγμάχος ελαφρού βάρους πλαίσιο, οι βασικές ενότητες συνδυάζουν τις απόλυτες ελάχιστες λειτουργίες. Αυτές οι ενότητες φορτώνονται γενικά όταν η διαδικασία του κόμβου ξεκινά την εκτέλεση της. Το μόνο που χρειάζεται να κάνετε είναι να εισαγάγετε αυτές τις βασικές ενότητες για να τις χρησιμοποιήσετε στον κώδικά σας.

Παρακάτω παραθέτω μερικές από τις σημαντικές ενότητες Core.

Βασική ενότητα Περιγραφή
http Περιέχει τάξεις, μεθόδους και συμβάντα που απαιτούνται για τη δημιουργία διακομιστή HTTP Node.js
url Περιέχει μεθόδους ανάλυσης και ανάλυσης διευθύνσεων URL στον κόμβο
ερωτηματολόγιο Περιέχει μεθόδους για την αντιμετώπιση μιας συμβολοσειράς ερωτήσεων του κόμβου
μονοπάτι Περιέχει μεθόδους αντιμετώπισης διαδρομών αρχείων
fs Περιέχει τάξεις, μεθόδους και συμβάντα για εργασία με το αρχείο I / O
Χρήσιμος Περιέχει βοηθητικές λειτουργίες που μπορούν να είναι χρήσιμες για προγραμματιστές

Μπορείτε να φορτώσετε την κύρια μονάδα σας, χρησιμοποιώντας τον παρακάτω κώδικα:

var module = απαιτείται ('module_name')

Ας δούμε τώρα, τι είναι οι «τοπικές ενότητες».

Τοπικές ενότητες

Οι τοπικές ενότητες του Node.js είναι προσαρμοσμένες ενότητες που δημιουργούνται τοπικά από τον χρήστη / προγραμματιστή στην εφαρμογή. Αυτές οι ενότητες μπορούν να περιλαμβάνουν διάφορες λειτουργίες ομαδοποιημένες σε ξεχωριστά αρχεία και φακέλους που μπορούν να διανεμηθούν εύκολα στην κοινότητα Node.js χρησιμοποιώντας το NPM.

Αυτές οι ενότητες φορτώνονται με παρόμοιο τρόπο με τις βασικές ενότητες. Ας σας δείξουμε, πώς να το κάνετε χρησιμοποιώντας ένα βασικό παράδειγμα.

Δημιουργήστε το προσαρμοσμένο / τοπικό αρχείο module.js

var detail = {name: function (name) {console.log ('Name:' + name)}, domain: function (domain) {console.log ('Domain:' + domain)}} module.exports = λεπτομέρεια

Συμπεριλάβετε το αρχείο λειτουργικής μονάδας στο κύριο αρχείο της εφαρμογής σας.

var myLogModule = απαιτείται ('./ Local_module.js') myLogModule.name ('Edureka') myLogModule.domain ('Εκπαίδευση')

Τώρα μπορείτε να εκτελέσετε αυτά τα αρχεία χρησιμοποιώντας την παρακάτω εντολή:

κόμβος application.js

Επιτρέψτε μου τώρα να σας δείξω τι είναι εξωτερικές ενότητες.

Εξωτερικές ενότητες

Μπορείτε να χρησιμοποιήσετε το εξωτερικό ή το 3rdμονάδες πάρτι μόνο κατεβάζοντάς τα μέσω NPM. Αυτές οι ενότητες γενικά αναπτύσσονται από άλλους προγραμματιστές και είναι ελεύθερες να χρησιμοποιηθούν. Λίγες από τις καλύτερες εξωτερικές μονάδες είναι express, react, gulp, mongoose, mocha κ.λπ.

Παγκόσμια φόρτωση των ενοτήτων τρίτων:

εγκατάσταση npm --g

Συμπεριλάβετε το αρχείο λειτουργικής μονάδας στο κύριο αρχείο της εφαρμογής σας:

εγκατάσταση npm - αποθήκευση

Αρχείο JSON

ο αρχείο package.json στο Node.js είναι η καρδιά ολόκληρης της εφαρμογής. Είναι βασικά το αρχείο δήλωσης που περιέχει τα μεταδεδομένα του έργου. Έτσι, η κατανόηση και η εργασία με αυτό το αρχείο καθίστανται πολύ σημαντικά για μια επιτυχημένη ανάπτυξη έργου Node.

Το αρχείο package.json αποτελείται γενικά από τα μεταδεδομένα της εφαρμογής, η οποία κατηγοριοποιείται περαιτέρω σε παρακάτω δύο κατηγορίες:

πώς να ξεκινήσετε μια τάξη στο python
  1. Προσδιορισμός ιδιοτήτων μεταδεδομένων: Αυτό αποτελείται από ιδιότητες όπως το όνομα του έργου, την τρέχουσα έκδοση της ενότητας, την άδεια, τον συγγραφέα του έργου, την περιγραφή του έργου κ.λπ.
  1. Γράφοντας απευθείας στο αρχείο: Μπορείτε να γράψετε απευθείας τις απαραίτητες πληροφορίες στο αρχείο package.json και να τις συμπεριλάβετε στο έργο σας.

Μέχρι τώρα έχετε εξοικειωθεί με τα διάφορα στοιχεία της εφαρμογής Node JS. Στην επόμενη ενότητα αυτού του Οδηγού Node.js, θα μοιραστώ ορισμένα βασικά στοιχεία του Node Js, ώστε να ξεκινήσουμε με τα χέρια.

Βασικά στοιχεία Node.js

Δεδομένου ότι το Node.js είναι ένα πλαίσιο JavaScript, χρησιμοποιεί τη σύνταξη JavaScript. Εάν θέλετε να μάθετε λεπτομερώς τη JavaScript, μπορείτε να ανατρέξετε σε αυτό . Προς το παρόν, θα σας φτιάξω κάποια βασικά στοιχεία του Node.js όπως:

Τύποι δεδομένων

Όπως κάθε άλλη γλώσσα προγραμματισμού, το Node.js έχει διάφορους τύπους δεδομένων, οι οποίοι κατηγοριοποιούνται περαιτέρω σε πρωτόγονοι και μη πρωτόγονοι τύποι δεδομένων.

Πρωτόγονοι τύποι δεδομένων είναι:

  1. Σειρά
  2. Αριθμός
  3. Boolean
  4. Μηδενικό
  5. Απροσδιόριστος

Οι μη πρωτόγονοι τύποι δεδομένων είναι:

  1. Αντικείμενο
  2. Ημερομηνία
  3. Πίνακας

Μεταβλητές

Μεταβλητή είναι οντότητες που διατηρούν τιμές που ενδέχεται να διαφέρουν κατά τη διάρκεια ενός προγράμματος. Για να δημιουργήσετε μια μεταβλητή στο Node.js, πρέπει να χρησιμοποιήσετε μια δεσμευμένη λέξη-κλειδί var. Δεν χρειάζεται να αντιστοιχίσετε έναν τύπο δεδομένων, καθώς ο μεταγλωττιστής θα τον επιλέξει αυτόματα.

Σύνταξη:

var varName = τιμή

Χειριστές

Το Node.js υποστηρίζει τους παρακάτω τελεστές:

Τύπος χειριστή Χειριστές
Αριθμητική +, -, /, *,%, ++, -
ΑΝΑΘΕΣΗ ΕΡΓΑΣΙΑΣ =, + =, - =, * =, / =,% =
Υποθετικός =;
Σύγκριση ==, === ,! = ,! ==,>,> =,<, <=,
Λογικός &&, || ,!
Λίγο &, |, ^, ~,<>, >>>

Λειτουργίες

Οι συναρτήσεις στο Node.js είναι ένα μπλοκ κώδικα που έχει όνομα και είναι γραμμένο για την επίτευξη μιας συγκεκριμένης εργασίας. Πρέπει να χρησιμοποιήσετε τη συνάρτηση λέξεων-κλειδιών για να τη δημιουργήσετε. Μια συνάρτηση είναι γενικά μια διαδικασία δύο βημάτων. Ο πρώτος είναι ο ορισμός της συνάρτησης και ο δεύτερος την καλεί. Ακολουθεί η σύνταξη της δημιουργίας και της επίκλησης μιας συνάρτησης:

Παράδειγμα:

// Καθορισμός μιας συνάρτησης function_Name (firstName, lastName) {alert ('Hello' + firstName + '+ lastName)} // Επίκληση της συνάρτησης display_Name (' Park ',' Jimin ')

Αντικείμενα

Ένα αντικείμενο είναι ένας μη πρωτόγονος τύπος δεδομένων που μπορεί να περιέχει πολλές τιμές από την άποψη των ιδιοτήτων και των μεθόδων. Τα αντικείμενα Node.js είναι αυτόνομες οντότητες καθώς δεν υπάρχει έννοια της κλάσης. Μπορείτε να δημιουργήσετε ένα αντικείμενο με δύο τρόπους:

  1. Χρήση κυριολεκτικού αντικειμένου
  2. Χρήση του κατασκευαστή αντικειμένων

Παράδειγμα:

// αντικείμενο με ιδιότητες και μέθοδο var karyawan = {// properties firstName: 'Minho', lastName: 'Choi', ηλικία: 35, μισθός: 50000, // μέθοδος getFullName: function () {return this.firstName + ' + this.lastName}}

Σύστημα αρχείων

Για να αποκτήσετε πρόσβαση στο φυσικό σύστημα αρχείων, το Node.js χρησιμοποιεί το fs λειτουργική μονάδα που βασικά φροντίζει για όλες τις ασύγχρονες και σύγχρονες λειτουργίες εισόδου / εξόδου αρχείων. Αυτή η ενότητα εισάγεται χρησιμοποιώντας την παρακάτω εντολή:

var fs = απαιτείται ('fs')

Μερικές από τις γενικές χρήσεις για τις ενότητες συστήματος αρχείων είναι:

  • Διαβάστε αρχεία
    1. fs.readFile ()
var http = απαιτείται ('http') var fs = απαιτείται ('fs') http.createServer (λειτουργία (req, res) {fs.readFile ('script.txt', function (err, data) {res.writeHead ( 200, {'Content-Type': 'text / html'}) res.write (data) res.end ()})}). Ακρόαση (8080)
  • Δημιουργήστε αρχεία
    1. appendFile ()
    2. Άνοιξε()
    3. writeFile ()
  • Ενημέρωση αρχείων
    1. fs.appendFile ()
    2. fs.writeFile ()
  • Διαγραφή αρχείων
    1. fs.unlink ()
  • Μετονομασία αρχείων
    1. fs.rename ()

Έτσι, με αυτές τις εντολές, μπορείτε να εκτελέσετε σχεδόν όλες τις απαιτούμενες λειτουργίες στα αρχεία σας. Ας προχωρήσουμε τώρα περαιτέρω με αυτό το Node.js Tutorial και να δούμε τι είναι τα συμβάντα και πώς αντιμετωπίζονται στο Node.js.

Εκδηλώσεις

Όπως έχω ήδη αναφέρει, οι εφαρμογές Node.js είναι μονές και βασίζονται σε συμβάντα. Το Node.js υποστηρίζει την ταυτόχρονη ταυτότητα, καθώς καθοδηγείται από συμβάντα και έτσι χρησιμοποιεί έννοιες όπως συμβάντα και επιστροφές κλήσεων. Οι κλήσεις συνάρτησης async βοηθούν το Node.js στη διατήρηση της ταυτόχρονης λειτουργίας σε όλη την εφαρμογή.

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

Το παρακάτω διάγραμμα δείχνει πώς οδηγούνται τα συμβάντα στο Node.js.

Thread Model - Node.js Tutorial - Edureka

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

Δεσμευτικό συμβάν σε ένα πρόγραμμα ακρόασης

// Εισαγωγή μονάδας συμβάντων var my_Events = απαιτείται ('events') // Δημιουργία αντικειμένου eventEmitter var my_EveEmitter = new my_Events.EventEmitter ()

Δεσμευτικός χειριστής συμβάντων σε ένα συμβάν

// Δεσμευτικός χειριστής συμβάντων και συμβάντων my_EveEmitter.on ('eventName', eventHandler)

Ενεργοποίηση εκδήλωσης

// Ενεργοποιήστε ένα συμβάν my_EveEmitter.emit ('eventName')

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

var emitter = απαιτείται ('events'). EventEmitter συνάρτηση iterateProcessor (num) {var emt = new emitter () setTimeout (function () {for (var i = 1 i & lt = num i ++) {emt.emit ('BeforeProcess') , i) console.log ('Processing Iteration:' + i) emt.emit ('AfterProcess', i)}}, 5000) return emt} var it = iterateProcessor (5) it.on ('BeforeProcess', συνάρτηση ( info) {console.log ('Έναρξη της διαδικασίας για' + info)}) it.on ('AfterProcess', function (info) {console.log ('Finishing processing for' + info)

Στην επόμενη ενότητα αυτού του Οδηγού Node.js, θα σας δώσω πληροφορίες σχετικά με μια από τις πιο σημαντικές λειτουργικές μονάδες του Node.js που ονομάζεται Ενότητα HTTP.

Ενότητα HTTP

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

Μπορείτε εύκολα να συμπεριλάβετε αυτήν την ενότητα στην εφαρμογή Node.js γράφοντας τον παρακάτω κώδικα:

var http = απαιτείται ('http')

Παρακάτω έχω γράψει έναν κώδικα, που δείχνει πώς αναπτύσσεται ένας Διακομιστής Ιστού στο Node.js.

// κλήση βιβλιοθήκης http var http = απαιτείται ('http') var url = απαιτείται ('url') // δημιουργία διακομιστή var διακομιστή = http.createServer (λειτουργία (req, res) {// ρύθμιση κεφαλίδας περιεχομένου res.writeHead ( 200, ('Content-Type', 'text / html')) var q = url.parse (req.url, true). Ερώτημα var txt = q.year + '+ q.month // αποστολή συμβολοσειράς στην απάντηση res.end (txt)}) // εκχώρηση 8082 ως διακομιστή θύρας ακρόασης διακομιστή. listen (8082)

Στην επόμενη ενότητα αυτού του Οδηγού Node.js, θα μιλήσω για το Express.js που χρησιμοποιείται σε μεγάλο βαθμό για την ανάπτυξη εφαρμογών ιστού από διακομιστή.

Express.js

Το Express.js είναι ένα πλαίσιο που δημιουργήθηκε πάνω από το Node.js που διευκολύνει τη διαχείριση της ροής δεδομένων μεταξύ διακομιστή και διαδρομών στις εφαρμογές από την πλευρά του διακομιστή. Πρόκειται για ένα ελαφρύ και ευέλικτο πλαίσιο που παρέχει ένα ευρύ φάσμα δυνατοτήτων που απαιτούνται για τον Ιστό καθώς και για την ανάπτυξη εφαρμογών για κινητά.

Το Express.js αναπτύσσεται στη μονάδα middleware του Node.js που ονομάζεται συνδέω-συωδεομαι . Η μονάδα σύνδεσης χρησιμοποιεί περαιτέρω http ενότητα για επικοινωνία με το Node.js. Έτσι, εάν εργάζεστε με κάποια από τις ενότητες middleware που βασίζονται σε σύνδεση, τότε μπορείτε εύκολα να ενσωματώσετε το Express.js.

Όχι μόνο αυτό, μερικά από τα κύρια πλεονεκτήματα του Express.js είναι:

  • Κάνει ταχύτερη ανάπτυξη εφαρμογών ιστού
  • Βοηθά στη δημιουργία εφαρμογών για κινητές συσκευές και ιστού μονών σελίδων, πολλών σελίδων και υβριδικών τύπων
  • Η Express παρέχει δύο κινητήρες templating, Jade και EJS
  • Το Express ακολουθεί την αρχιτεκτονική Model-View-Controller (MVC)
  • Κάνει ενοποίηση με βάσεις δεδομένων όπως MongoDB, Redis, MySQL
  • Ορίζει ένα σφάλμα χειρισμού του middleware
  • Απλοποιεί τη διαμόρφωση και την προσαρμογή εύκολα για την εφαρμογή.

Με όλες αυτές τις δυνατότητες, η Express αναλαμβάνει την ευθύνη του backend part στη στοίβα MEAN. Το Mean Stack είναι η στοίβα λογισμικού ανοιχτού κώδικα JavaScript που χρησιμοποιείται για τη δημιουργία δυναμικών ιστότοπων και εφαρμογών ιστού. Εδώ, ΣΗΜΑΙΝΩ σημαίνει Μ ongoDB, ΕΙΝΑΙ xpress.js, ΠΡΟΣ ΤΟ ngularJS, και Ν ode.js.

Ας δούμε τώρα ένα απλό παράδειγμα για να κατανοήσουμε, πώς λειτουργεί το Express.js με το Node.js για να διευκολύνει τη δουλειά μας. Αλλά πριν ξεκινήσετε να εργάζεστε με το Express.js, πρέπει να το εγκαταστήσετε στο σύστημά σας.

Για να εγκαταστήσετε το Express.js παγκοσμίως μπορείτε να χρησιμοποιήσετε την παρακάτω εντολή:

npm εγκατάσταση -g express

Εναλλακτικά, εάν θέλετε να το εγκαταστήσετε τοπικά στο φάκελο του έργου σας, πρέπει να εκτελέσετε την παρακάτω εντολή:

npm εγκατάσταση express - αποθήκευση

Δεδομένου ότι έχουμε τελειώσει με όλες τις προετοιμασίες, ας περάσουμε τώρα άμεσα στην πρακτική εφαρμογή. Εδώ, θα δείξω μια απλή εφαρμογή ελέγχου ταυτότητας χρήστη χρησιμοποιώντας τα Node.js και Express.js.

Node.js Tutorial Βήμα προς βήμα Ανάπτυξη εφαρμογών με Express.js

Για αυτό, χρειαζόμαστε παρακάτω αρχεία:

  • package.json
  • script.js
  • προβολές
    • index.jade
    • login.jade
    • ασφαλής. τζάιντ
    • μη εξουσιοδοτημένο.jade
    • Καλώς ήλθατε. Τζέιντ
  • lib
    • route.js

Ας ξεκινήσουμε λοιπόν package.json .

{'author': 'Edureka', 'name': 'Express_Demo', 'description': 'Express with Node.js', 'version': '0.0.0', 'scripts': {'start': 'node script.js '},' engine ': {' node ':' ~ 0.4.12 '},' dependencies ': {' connect-flash ':' ^ 0.1.1 ',' cookie-parser ':' ^ 1.4 .3 ',' express ':' ^ 3.21.2 ',' jade ':' ^ 0.20.3 ',' req-flash ':' 0.0.3 '},' devDependencies ': {}}

Στη συνέχεια, πρέπει να δημιουργήσετε το script.js .

var express = απαιτείται ('express') var http = απαιτείται ('http') var port = 8999 var app = express () const flash = απαιτείται ('connect-flash') var cookieParser = απαιτείται ('cookie-parser') var server = http.createServer (app) function checkAuth (req, res, next) {console.log ('checkAuth' + req.url) // δεν εξυπηρετούν / ασφαλίζουν σε όσους δεν έχουν συνδεθεί εάν (req.url = == '/ safe' && (! req.session ||! req.session.authenticated)) {res.render ('unhorhorized', {status: 403}) return} next ()} app.use (flash () app.use (cookieParser ()) app.use (express.session ({secret: 'example'})) app.use (express.bodyParser ()) app.use (checkAuth) app.use (app.router) app.set ('view engine', 'jade') app.set ('view options', {layout: false}) απαιτούν ('./ lib / Rute.js') (app) app.listen (port) console .log ('Ακρόαση κόμβου στη θύρα% s', θύρα)

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

!!! 5 html (lang = 'en') επικεφαλίδα τίτλος Έλεγχος ταυτότητας χρήστη Παράδειγμα body h1 center Επίδειξη ελέγχου ταυτότητας χρησιμοποιώντας Express h3 Πλοήγηση στο h4 ul li: a (href = '/ safe') Ασφαλές περιεχόμενο li: a (href = '/ welcome') Καλώς ήλθατε στη σελίδα li: a (href = '/ logout') Έξοδος

Τώρα, δημιουργήστε το login.jade αρχείο.

!!! 5 html (lang = 'en') επικεφαλής τίτλος Express otentication example body h1 center Σύνδεση σε αυτό το Express authentication example center p Χρήση χρήστης για το όνομα χρήστη και πέρασμα για τον κωδικό πρόσβασης. form (method = 'post') p label (for = 'username') Εισαγωγή διεύθυνσης email (type = 'text', name = 'username', class = 'form-control', id = 'exampleInputPassword1', placeholder = ' Email ', style =' width: 400px ') p center label (for =' password ') Password input (type =' password ', name =' password ', class =' ​​form-control ', id =' exampleInputPassword1 ', placeholder = 'Password', style = 'width: 400px') p center Submit - κάθε μήνυμα σε flash h4 (style = 'color: red') # {message}

Το επόμενο βήμα είναι να δημιουργήσετε το Καλώς ήλθατε. Τζέιντ .

!!! 5 html (lang = 'en') επικεφαλίδα τίτλος Έλεγχος ταυτότητας χρήστη Παράδειγμα body h1 center Welcome To The Edureka Tutorial!

Στη συνέχεια, δημιουργήστε το ασφαλής. τζάιντ αρχείο.

!!! 5 html (lang = 'en') head title Express Authentication Παράδειγμα body h1 center Γεια, ασφαλής χρήστης. p Πλοήγηση στο ul li: a (href = '/ safe') Ασφαλές περιεχόμενο li: a (href = '/ welcome') Welcome page li: a (href = '/ logout') Logout

Τώρα, δημιουργήστε το μη εξουσιοδοτημένο.jade αρχείο.

!!! 5 html (lang = 'en') επικεφαλίδα τίτλος Έλεγχος ταυτότητας χρήστη Παράδειγμα body h1 center Μη εξουσιοδοτημένο p Δεν είστε εξουσιοδοτημένοι για προβολή αυτής της σελίδας. Σε παρακαλώ ' να συνεχίσει

Τώρα, πρέπει να δημιουργήσετε ένα φάκελο και να το ονομάσετε lib . Τώρα, δημιουργήστε ένα route.js αρχείο που θα αντιστοιχίσει όλες τις σελίδες.

var util = απαιτείται ('util') module.exports = function (app) {app.get ('/', function (req, res, next) {res.render ('index')}) app.get (' / Welcome ', function (req, res, next) {res.render (' welcome ')}) app.get (' / safe ', function (req, res, next) {res.render (' ασφαλές ')} app.get ('/ login', function (req, res, next) {res.render ('login', {flash: req.flash ()})}) app.post ('/ login', function ( req, res, next) {// ίσως θέλετε να κάνετε αναζήτηση βάσης δεδομένων ή κάτι πιο επεκτάσιμο εδώ εάν (req.body.username && req.body.username === 'user' && req.body.password && req.body.password === 'pass') {req.session.authenticated = true res.redirect ('/ safe')} other {req.flash ('error', 'Όνομα χρήστη και κωδικός πρόσβασης είναι εσφαλμένα') res. redirect ('/ login')}}) app.get ('/ logout', function (req, res, next) {delete req.session.authenticated res.redirect ('/')})}}

Τώρα, εάν θέλετε να εκτελέσετε αυτόν τον κώδικα μόνοι σας, μπορείτε να τον κατεβάσετε από εδώ: Εκμάθηση PDF Node.js .

χρησιμοποιώντας κλάση σαρωτή στην Java

Με αυτό, φτάνουμε στο τέλος αυτού του Οδηγού Node.js. Ελπίζω ότι κατάφερα να εξηγήσω τις έννοιες του Node.js από την αρχή.

Αν βρήκατε αυτό το 'Node.js Tutorial ' σχετικό, δείτε το από την Edureka, μια αξιόπιστη διαδικτυακή εταιρεία εκμάθησης με δίκτυο περισσότερων από 250.000 ικανοποιημένων μαθητών σε όλο τον κόσμο.

Έχετε μια ερώτηση για εμάς; Παρακαλώ αναφέρετέ το στην ενότητα σχολίων αυτού του Οδηγού Node.js και θα επικοινωνήσουμε μαζί σας.