Da Paypal und Netflix kürzlich ihre Migration zu Node.js angekündigt haben, hat sich die serverseitige Javascript-Plattform im Unternehmensbereich bewährt. Dies ist ein kleiner Schritt für Node, aber ein großer Sprung für Javascript-Programmierer. NET, Java, PHP, Ruby on Rails und weitere technische Bereiche werden alle serverseitigen Programmierer auf dieser Plattform zusammenlaufen. Da große Player wie Yahoo, Walmart und Oracle ins Spiel kommen, verliert Node seinen schlechten Ruf, unreif zu sein instabil. In diesem Artikel zeige ich Ihnen, wie einfach es ist, Node.js unter Windows zu installieren.
Node.js installieren
Die Installation von Node.js unter Windows ist ein Kinderspiel. Laden Sie die Datei „.msi“ herunter und führen Sie sie aus. Dadurch werden Node.js und NPM (Node Package Management Module) installiert ist äquivalent zum NuGet-Paketmanager für .NET-Anwendungen.
Node.js ausführen
Das Ausführen von Node.js unter Windows ist genauso einfach. Öffnen Sie PowerShell und geben Sie „node -v“ ein. Stellen Sie sicher, dass sich Node in Ihren Umgebungsvariablen befindet, und sehen Sie, welche Version von Node.js Sie ausführen. Lassen Sie uns die Version des Node-Paketverwaltungstools überprüfen, das Sie installiert haben. Ok, fangen wir an, Spaß zu haben!!
Öffnen Sie das Notepad-Programm. Wir erstellen unsere erste Node.js-Anwendung. Kopieren Sie den folgenden Code in das Notepad-Programm, verwenden Sie einen beliebigen Dateinamen, z. B. „example.js“, und speichern Sie ihn. Gehen Sie in den gewünschten Ordner:
var http = require('http'); http.createServer(function (req, res) { res.writeHead(200, {'Content-Type': 'text/plain'}); res.end('Hello Node'); }).listen(1337, '127.0.0.1');
Gehen Sie nun zurück zu PowerShell. Ändern Sie den Pfad zu Ihrer Datei „example.js“ und führen Sie Node! aus.
cd C:\Websites\NodeTest node example.js
Öffnen Sie Ihren Webbrowser und navigieren Sie zu http://127.0.0.1:1337. Herzlichen Glückwunsch zum Ausführen Ihrer ersten Node.js-Anwendung!
Bereitstellung von Website-Diensten
Befürchten Sie, dass ich einfach ein „Hello World“-Beispiel hinterlasse und Schluss mache? Wenn wir wissen, wie man eine HTML-Datei ausführt, wäre es noch besser, eine „index.html“-Datei hinzuzufügen Beliebiger HTML-Inhalt. Er sieht so aus:
<html> <head> <title>Sample Node.js Website</title> </head> <body> <p>This is the home page for you Node.js website.</p> </body> </html>
Es ist Zeit, die App auszuführen. Erstellen Sie eine neue Datei mit einem beliebigen Namen, z. B. „index.js“, und fügen Sie den folgenden js-Code hinzu:
var http = require('http'); var fs = require('fs'); http.createServer(function(req, res){ fs.readFile('index.html',function (err, data){ res.writeHead(200, { 'Content-Type': 'text/html', 'Content-Length': data.length }); res.write(data); res.end(); }); }).listen(1337, '127.0.0.1');
Beachten Sie die zusätzliche Zeile „require“ am Anfang. Sie fügt die erforderlichen Abhängigkeiten in Ihre Anwendung ein. Dies ähnelt der Zeile „require“, die in C# zum Aufrufen von Abhängigkeiten verwendet wird " Namespace-Direktive.
Führen Sie „index.js“ aus, indem Sie „node index.js“ in PowerShell eingeben (vergessen Sie nicht, Strg-C zu drücken, um die letzte Ausführung der Node-Anwendung zu beenden, oder verwenden Sie dieses Mal eine neue Portnummer in Ihrem Browser). Navigieren Sie zu http://127.0.0.1:1337 und Sie sollten Ihre HTML-Datei sehen. Sie werden wahrscheinlich ein wenig aufgeregt sein über diesen Erfolg, aber wenn Sie mich vermissen, werde ich einige gemischte Gefühle dabei haben ist immer noch Low-Level-Programmierung, und die Welt würde sich schnell ändern, wenn ich jedes Mal darüber nachdenken müsste, welchen Status ich senden soll. Sag Hallo zu ExpressJS!
Verwenden Sie den Node-Paketmanager
Node.js hat einen Partner, der die Welt wieder schön macht. ExpressJS macht es überflüssig, die gleichen alten Tricks in Node.js zu wiederholen, sodass Sie direkt in die Webentwicklung einsteigen können Seiten, Ein Web-Framework für mehrseitige und gemischte Webanwendungen. Ohne es haben Sie keine Hoffnung in der Node.js-Welt!
Um dies zu tun, öffnen Sie PowerShell erneut und geben Sie Folgendes ein: npm install express. Aus dieser Perspektive wird ein Knoten namens „node_modules“ erstellt Wie Sie sehen, werden Ihre Node-Module dort abgelegt, ähnlich wie im „bin“-Verzeichnis in einer .NET-Anwendung, und von hier aus können Sie Ihre abhängigen Programme aufrufen oder „anfordern“.
Erste Schritte mit ExpressJS
var express = require('express'); //CREATE APP var app = express(); //LOCATION OF STATIC CONTENT IN YOUR FILESYSTEM app.use(express.static(__dirname)); //PORT TO LISTEN TO app.listen(1337);
这是在调用ExpressJS的依赖, 然后从它那里创建一个应用. 从此你可就牛逼大发了! 在这里,我们只是简单的提供静态文件服务. "__dirname" 是来自ExpressJS的一个特殊的变量,意思是根文件系统位置. 最后你告诉应用去侦听端口 1337. 现在你就拥有了一个提供静态文件服务的 Node.js 站点了! 另外在新增一些HTML文件,一些放在子目录中,然后到http://127.0.0.1:1337 测试看看吧.
关于 IIS
在这些示例中, 我一直都是在端口1337运行应用,而不是端口80.原因是IIS已经侦听了80端口. 有许多的方法可以使IIS 和 Node.js 和谐共存:
关于 MS SQL
有许多为Node.js准备的 MS SQL 驱动程序, 有些甚至是跨平台的. 有一个只能在Windows环境中运行的,是由Windows Azure发布: Microsoft Driver for Node.js for SQL Server. 而你可以像下面这样开始工作:
var sql = require('node-sqlserver'); var connStr = "Driver={SQL Server Native Client 11.0};Server=(local);Database=AdventureWorks2012;Trusted_Connection={Yes}"; var cmd = "SELECT TOP 10 FirstName, LastName FROM Person.Person"; sql.open(connStr, function (err, conn) { conn.queryRaw(cmd , function (err, results) { for (var i = 0; i < results.rows.length; i++) { console.log( "FirstName: " + results.rows[i][0] + " LastName: " + results.rows[i][1]); } }); });
总结
这些都只是皮毛! 与 ExpressJS携手, 你将能够创建带有路由、视图、布局、服务还有更多组件的完全成熟的MVC应用程序. 同样,除非你需要去集成一些现有的Microsoft应用程序或者MS SQL数据库, MongoDB 在你创建一个Node堆栈式是能帮助你从SQL中解放的好伙伴. 最后,你可以使用MEAN创建一个MEAN Javascript全栈应用, 包括有MongoDB, ExpressJS, AngularJS, 和Node.js. 现在企业已经向Node.js靠拢了, 对你而言同样是不是时候来辅助行动了呢?