Umweltveränderungen haben einen großen technologischen Sprung nach vorne geführt, wobei Chancen und Herausforderungen gleichzeitig kommen. Da ich JS nicht gelernt habe, musste ich die Ente fahren, um sie in die Regale zu legen und sie zusammen zu lernen. (><)
1. Lesen Sie zuerst das Buch
Ich habe zu Beginn "eingehender und leicht verständlicher Node.js" gelesen, und ich erkannte, dass dieses Buch nach dem Lesen eine bestimmte Grundlage erfordert. Ich habe die 41-seitige "Einführung in den Knoten" online durchsucht und gelernt, selbst eine Webanwendung zu erstellen. Und nachdem ich das Gefühl der Leistung erfrischt habe, las ich "The Great Node.js". Jetzt werde ich das Buch erneut lesen, nachdem ich "eingehender und leicht verständlicher Node.js" gelesen habe.
2. Erstellen Sie eine Umgebung, um Routinen für Git auszuführen (3 gemeldete Fehler)
Nachdem Sie MSI auf der offiziellen Website heruntergeladen haben, gehen Sie als nächstes. Bei der Eingabe des Befehls NPM -Installation wird ein Fehler "NPM err! Nicht gefunden: Git" gemeldet. Der Grund dafür ist, dass der neue Computer Git nicht folgt.
Bei der Installation des externen Abhängigkeitspakets wurde ein Fehler "Gyp Err! Konfigurieren" gemeldet, und der Grund war, dass die Python -Umgebung dies nicht tat. Darüber hinaus kann dieses Abhängigkeitspaket nur in der unteren Version installiert werden. Der letzte Fehler war "MSBUILD: ERROR MSB3428: Visual C ++ - Komponente" vcbuild.exe "konnte nicht geladen werden. Der Fehler wurde nach der Installation des .NET -Framework 2.0 SDK und MVS2005 noch gemeldet.
3. Die erste Webanwendung
Nach dem Ausführen von "Hello World" schreiben Sie eine Webanwendung, die vollständig auf dem Knoten basiert. Zunächst müssen Sie das Servermodul starten. Das vom HTTP -Modul erstellte Funktion des CreateServer -Funktions hat eine Höranlage für die Hörmethode ([Port]). Die Parameter dieser Funktion sind seltsam und eine Funktionsdefinition. In JavaScript kann eine Funktion einen Parameter als eine andere Funktion empfangen, und die Parameterfunktion wird als anonyme Funktion bezeichnet. Der Grund für die Verwendung dieser Methode ist, dass der Knoten ereignisgesteuerte Rückrufe verwendet. Wenn der Server eine Anforderung in einem einzigen Prozess erhält, wird diese Funktion aufgerufen, um die Anforderung zu verarbeiten. Wenn ein entsprechendes Ereignis auftritt, ruft die Funktion createServer diese Funktion hin und her auf.
Nach Erhalt der HTTP -Anfrage müssen wir die Anfrage bearbeiten. Zunächst schlagen wir abstrakt unterschiedliche URLs vor und erhalten und postieren Parameter für die Anfrage. Hier verwenden wir zwei interne Modul -URLs (Parsing -URLs) und Abfragebarstellung (Verarbeitung von Abfragebrägern). Und fügen Sie das Routermodul durch Abhängigkeitsinjektion hinzu. Als nächstes muss das Modul, das die Anfrage bearbeitet, abgeschlossen sein, bevor das Routing verbessert wird. Alle Anfragen werden zuerst zwischen Modulen über einen Griff übergeben, und der Handler kann antworten. Lassen Sie den Anforderungshandler im Allgemeinen die Informationen, die sie dem Benutzer anweisen möchten, direkt zurückgeben (return ()) über die OnRequest -Funktion. Bei der Durchführung von Blockierungsvorgängen kann es jedoch sehr zeitaufwändig sein. Daher müssen wir nicht blockierende Vorgänge verwenden. Verwenden Sie Rückrufe, indem Sie die Funktion als Argument an andere Funktionen übergeben, deren Verarbeitung Zeit in Anspruch nimmt. Im Vergleich zum Übergeben von Inhalten an den Server verwenden wir die Methode, den Server dieses Mal an den Inhalt zu übergeben. Es soll das Antwortobjekt (erhalten Sie von der Rückruffunktion des Servers onRequest ()) als Funktionsparameter an den Handler durch Routing. Auf diese Weise kann der Handler die Funktionen auf dem Objekt aufrufen.
Als nächstes werden wir den Verarbeitungsschritt durchführen, Bilder über das Formular hochladen, und hier verwenden wir das externe Abhängigkeitspaket, das zum Empfangen von Bildern fantastisch ist. Dieses Modul wird verwendet, um Formulare zu verarbeiten und Dateien hochzuladen. Verwenden Sie zunächst var form = new formatable.incomingForm (); um ein Formularobjekt zu erhalten. Die Parse -Methode dieses Objekts kann Daten analysieren und verarbeiten. Wir speichern einfach die Datei. Das FS -Modul wird verwendet, um die Datei zu speichern. Durch Umbenennen der Methode, Angabe des gespeicherten Speicherorts unter Verwendung der synchronisierten Methode umbenanntesync () kann dem Dateispeicherverhalten das Bildverhalten angezeigt werden.
Es ist sehr einfach, Bilder anzuzeigen. Sie können die Datei über die ReadFile -Methode von FS lesen. Sie können in seiner Rückruffunktion die Response.Write (Datei, "Binary") verwenden, um Bilder im Browser anzuzeigen.
Zusammenfassend lässt sich sagen, dass wir durch diese Routine die Merkmale in Node.js wie eines Threading, asynchron, ereignisgesteuert usw. gelernt haben. Einige dieser abstrakten Konzepte werden auch durch Routinen angezeigt, müssen jedoch weiterhin ausführlich verstanden werden. Wenn Sie durch Routinen lernen, müssen Sie die Informationen überprüfen, wenn Sie sie nicht verstehen. Diese Lernmethode ist auch eine gute Methode zum Ausgangsputentyp in Eingabe.