In den vorherigen Lektionen
haben wir über Node gelernt.
Wir haben auch gesehen, wie Node verwendet werden kann, um einen Webserver einzurichten.
Jetzt hielten die Node-Designer den Knoten absichtlich klein mit einer kleinen Anzahl von
Codemodulen, so dass sie es
Dritten überlassen können, innovative Lösungen für Probleme zu finden.
Nachdem Node veröffentlicht wurde, begannen eine Reihe von Drittanbieter-Entwicklern,
interessante Drittanbieter-Module zu entwerfen und zu veröffentlichen, die auf der Node-Plattform ausgeführt werden können.
Nun haben Sie eine Reihe von Node-Modulen gesehen, die
für die Front-End-Entwicklung in den vorherigen Kursen verwendet werden könnten.
Jetzt in diesem Kurs betrachten wir die serverseitige Entwicklung und auf der Serverseite
ist eines der beliebtesten Knotenmodule oder Frameworks von Drittanbietern zum Erstellen von HTTP-Servern Express.
Schauen wir uns einige Details von Express in
dieser Vorlesung an und dann werden wir Express verwenden, um
einen Server zu erstellen, der die REST-API während des gesamten Kurses bereitstellt.
Erstens, was ist Express?
Express ist ein schnelles, unauffälliges,
minimalistisches Framework, das auf Node.js läuft und die Webentwicklung unterstützt.
Dies ist die Definition, die ich von expressjs.com ausgeliehen habe,
der Website, auf der Express-Dokumentation für uns verfügbar ist.
Jetzt können Sie mit Express eine Webanwendung entwickeln,
serverseitige Anwendung, die Inhalte für den Verbrauch durch unser Front-End bereitstellt.
Express bietet eine robuste Reihe von Funktionen, die wir in
den restlichen Lektionen in diesem Kurs genauer untersuchen werden.
Express selbst, wie ich sagte, ist ein minimalistisches Framework,
und Express bietet auch eine Möglichkeit,
Express über Middleware von Drittanbietern zu erweitern und hinzuzufügen.
Dadurch wird die Funktionalität von Express erweitert und je nach Bedarf weitere Funktionen hinzugefügt.
So können Sie Ihren Webserver mit genauso vielen Middleware von Drittanbietern erstellen, wie es
für die Erfüllung der Anforderungen Ihres Webservers erforderlich ist, den Sie entwerfen.
In dieser Lektion werden wir uns einige Beispiele für Middleware von Drittanbietern ansehen, und wir
werden auch mehr davon untersuchen, während wir den Rest der Lektionen in diesem Kurs durchlaufen.
Um Express in Ihrem Projekt zu verwenden, besteht natürlich
der erste Schritt darin, Express zu installieren und da Express ein Node-Modul ist,
installieren wir es, indem wir npm install express —save sagen
und dies würde Express in Ihrem lokalen Projekt installieren.
Wir werden die Verwendung dieses in der Übung sehen, die dieser Vorlesung folgt.
Lassen Sie uns kurz über die Express Middleware sprechen.
Was genau ist der Zweck der Middleware?
Die Middleware, die Express unterstützt, bietet eine Menge
Plug-in-Funktionalität, die verwendet werden würde, um Ihre Express-Anwendung zu verbessern,
Plug-in-Funktionalität wie zum Beispiel werden wir uns
eine Middleware namens Morgan ansehen, die es
Ihnen ermöglicht, Protokollinformationen auf dem Bildschirm über die -Anforderungen, die in Ihren Server kommen.
In ähnlicher Weise betrachten wir eine andere Middleware namens BodyParser, mit
der Sie den Text der
eingehenden HTTP-Anforderungsnachricht analysieren und
Informationen daraus für die Verwendung in Ihrer Express-Anwendung extrahieren können.
Wir werden die Verwendung dieser in der folgenden Übung sehen.
Wie ich bereits erwähnt habe, protokolliert Morgan Informationen auf der Konsole auf der Serverseite,
Informationen über die eingehenden Anfragen.
In ähnlicher Weise können sie statische Webressourcen von unserem Server mit dem
Express-statischen bereitstellen, so dass dies Informationen aus einem Ordner innerhalb unseres Express-Projekts bereitstellt,
und bei der Deklaration des Projekts können Sie sagen, ich bin
doppelter Unterstrich Dateiname und doppelter Unterstrich Verzeichnisname oder Dirname, die gibt
Ihnen den vollständigen Pfad für die Datei oder das Verzeichnis für
das aktuelle Modul an und Sie werden sehen, dass ich diesen in der Übung verwende.
Nun, da wir ein wenig über
Express und die Middleware, die Express verwendet, verstanden haben,
schauen wir uns ein Node-Modul an,
da dies das erste Mal ist, dass wir
auf ein Drittanbieter-Knoten-Module stoßen, werden wir einige Details über die Drittanbieter-Knoten-Module betrachten. Wenn wir also die
package.json-Datei, um zu sehen, was in der package.json-Datei enthalten ist,
werden wir uns auch die semantische Versionierung ansehen.
Wenn Sie also die Version des Pakets angeben, das Sie verwenden,
geben Sie immer die Version an, indem Sie die Major Version.Minor Version.The Patch angeben.
Also, wenn Sie ein Paket installieren,
wird es immer durch diese drei Zahlen identifiziert,
Hauptversion, die brechen Änderungen einführen könnte, was bedeutet, dass, wenn Sie
eine neuere Version des Pakets installieren, es möglicherweise nicht
vollständig abwärtskompatibel mit früheren Versionen ist.
Es kann zu brechenden Änderungen führen, wobei Sie möglicherweise zurückgehen und
den Code reparieren müssen, den Sie möglicherweise in der früheren Version Ihres Projekts geschrieben haben.
Die Nebenversion führt
einige kleinere Änderungen an Ihrem Paket ein und beeinträchtigt möglicherweise keine Änderungen.
Ein Patch wäre eine Fehlerbehebung, die oft ausgegeben wird, dann wird ein kleiner Fehler entdeckt.
Daher führen Patches in der Regel nicht zu kaputten Änderungen, so dass Sie problemlos
eine höhere Version oder eine höhere Patch-Version
eines bestimmten Pakets verwenden können, das Sie in Ihrer Node-Anwendung verwenden.
Wenn Sie ein Paket installieren, können Sie
die genaue Version des zu installierenden Pakets angeben, indem Sie npm install sagen.
Wenn Sie beispielsweise die
Version 4.0.0 von Express installieren möchten, können Sie express @4 .0.0 sagen.
Sie geben also explizit an, welche Version des Pakets installiert werden soll.
Wenn Sie mit einer höheren Patch-Version einverstanden sind,
würden Sie sagen, npm install expres@"~4.0.0 Wenn
eine Nebenversion höhere Version eines Pakets
akzeptabel ist, dann würden Sie @ und den Namen des Pakets sagen.
Jetzt wird diese Art von Informationen auch in der package.json-Datei gespeichert,
wir werden schnell einen Besuch im Paket der json-Datei zahlen,
wo Sie feststellen, dass einige dieser Informationen gespeichert werden.
Wenn Sie nun die Übung durchführen, die dieser Vorlesung folgt,
sehen Sie dies in der Datei package.json.
Dies wird das Ergebnis des Abschlusses der Übung sein, die diesem Vortrag folgt.
In der Übung werden wir einen einfachen Webserver mit Express konstruieren.
Lassen Sie mich Sie nun durch eine kurze Tour von package.json führen,
um einige Informationen in package.json zu veranschaulichen.
Also in package.json Datei werden Sie diese Informationen hier bemerken,
diese Eigenschaft für unsere json, die hier gespeichert wird Abhängigkeiten genannt.
Die Abhängigkeiten
sind, wo Sie angeben, welche zusätzlichen Module von Drittanbietern, von denen dieses spezielle Knoten-Projekt abhängig ist, so wie Sie hier sehen können, sagen wir, dass dieses Projekt von Express
und Morgan abhängig ist und insbesondere beachten, wie diese Informationen angegeben werden hier.
Dies ist also ^4.16.3, was bedeutet, dass dies
mit jeder Version von 4.16.3 oder höher funktioniert.
Sie können eine übergeordnete Nebenversion verwenden, und dieses Projekt wird immer noch in
Ordnung sein, und ähnlich für Morgan haben wir die Informationen hier angegeben.
Diese zusätzlichen Informationen werden also in die Datei package.json hinzugefügt, wenn Sie
npm install ausführen und sagen —save flag für die npm installation.
Jetzt werden Sie auch bemerken, dass ich eine.gitignore Datei hier erstellt habe und in
der.gitignore Datei habe ich angegeben, dass git den Knoten Modulordner ignorieren sollte.
Was genau ist also im Ordner „Node Modules“ enthalten?
Wenn Sie Drittanbieter-Module in Ihre Node-Anwendung installieren,
werden alle diese Drittanbieter-Module hier im Ordner Node Module gespeichert,
so dass in Ihrem Projekt sehen Sie, dass der Ordner Node Modules hier erstellt wurde.
Und wenn Sie sich den Ordner „Knotenmodule“ ansehen, sehen Sie
eine ganze Reihe von Paketen, die installiert wurden.
Jetzt wurden alle diese installiert, weil Sie
Express und Express installieren wiederum von
einigen anderen Paketen abhängt, die erforderlich sind, so dass alle diese auch hier standardmäßig installiert werden.
Lassen Sie mich insbesondere auch Ihre Aufmerksamkeit auf das Express-Paket hier lenken.
Wenn Sie also in das Express-Paket gehen, sehen Sie
zusätzliche Informationen, die im Express-Paket gespeichert werden.
Indexperspektive auch, da Express selbst
ein Node-Modul ist, werden Sie eine
package.json-Datei sehen in Express, der auch
zusätzliche Informationen enthält, die dort natürlich sehr detailliert sind,
für uns schwer zu verstehen sind, aber insbesondere beachten Sie
, dass Express selbst von vielen anderen Node Modulen hier abhängig ist.
Und das ist der Grund, warum alle diese anderen Node-Module
auch in den Node Modules Ordner installiert wurden.
Wenn Sie Express installieren,
löst dies sofort auch alle seine Abhängigkeiten aus, die ebenfalls installiert werden, da
Express diese anderen Knotenmodule benötigt, um seine Arbeit zu erledigen.
Außerdem werden Sie in Express auch die Datei index.js sehen.
Dies ist also der Ausgangspunkt für unser Express Node Modul selbst und
beachten Sie insbesondere, dass die Datei index.js einfach sagt module.exports lib express erfordern.
Der eigentliche Code für das Express-Modul selbst befindet sich also in diesem lib-Projekt,
lib-Ordner hier und Sie können das Detail sehen.
Wenn Sie also neugierig sind, die Details von Express selbst zu sehen, können Sie
dort hineinschauen, aber das kann in diesem Moment ein bisschen zu viel für Sie sein.
Akzeptieren Sie im Moment einfach die Tatsache, dass Express seine Arbeit wie erwartet erledigen wird.
Aber ich dachte, dass es eine interessante Erfahrung sein wird, den Ordner des Node-Moduls
zu besuchen, um eine Struktur eines bestimmten Drittanbieter-Knoten-Moduls näher zu betrachten.
Außerdem werden Sie feststellen, dass es
hier eine andere Datei namens package-lock.json gibt, die installiert ist.
Jetzt wird dies von den neueren Versionen von npm installiert.
Die package-lock.json-Datei wird automatisch von
npm generiert, die Informationen über
den genauen Baum speichert, der generiert wurde, wenn Sie
andere Node-Module installieren. Dies ist sehr nützlich, wenn Sie die
Installation der Node-Module an einem anderen Speicherort durchführen müssen.
Wenn Sie zum Beispiel ein Git-Repository herunterladen und
versuchen, dieses Projekt auf einem anderen Computer neu zu erstellen,
geben Sie einfach npm install an der Eingabeaufforderung ein, und
das wird Ihre Node-Anwendung auffordern,
automatisch alles zu installieren, was in den Abhängigkeiten hier für Sie angegeben ist.
Während der Erstellung, dass die package-lock.json zusätzliche Informationen speichert, die von
npm verwendet wird, um die korrekte Installation aller erforderlichen npm-Module durchzuführen.
Jetzt müssen Sie sich im Moment keine Gedanken über die Details dessen machen,
was sich in der package-lock.json-Datei befindet.
Damit schließen wir diese Lektion ab, in der wir einige Details über Express untersucht haben.