首頁 web前端 js教程 Windows系統下Node.js的簡單入門教學_node.js

Windows系統下Node.js的簡單入門教學_node.js

May 16, 2016 pm 03:53 PM
node windows

隨著最近Paypal和Netflix宣告遷移到Node.js, 伺服器端Javascript平台已經證明其自身在企業領域的價值. 這對於Node來說是一小步,對於Javascript而言卻是一大跨越啊! 來自.NET, Java, PHP, Ruby on Rails和更多技術領域的程式設計師, 所有遊走於伺服器端的編碼者都會聚集到這個平台上. 作為像Yahoo, Walmart, 和Oracle 這樣的大玩家入局, , Node 正在甩掉其一直就存在的不成熟和不穩定的壞名聲. 在這篇文章中,我會向你展示在Window環境下安裝Node.js到底有多容易.
安裝Node.js

讓Node.js安裝在Windows上就是小事一樁. 到Node.js 網站下載並運行".msi"檔. 它將會把Node.js 和NPM (Node包管理模組)安裝上. NPM 相當於用於.NET應用的NuGet 套件管理器.

運行Node.js

在Windows上運行Node.js同樣很容易. 打開PowerShell 並輸入"node -v" 確保Node在你的環境變量,並查看你正在運行的Node.js的版本. 同樣的輸入"npm -v " 來查看你安裝的Node包管理工具的版本. 你弄好了沒? Ok, 讓我們來開始享受樂趣吧!!

打開記事本程序,我們將構建我們的第一個Node.js應用. 把下面的代碼複製到記事本程序中,使用任何文件名都可以,比如"example.js", 並把它保存到你希望的資料夾:
 

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');
登入後複製

現在回到 PowerShell. 將路徑變更到你的"example.js"檔案存放的地方,並執行Node!
 

cd C:\Websites\NodeTest
node example.js
登入後複製

開啟你的網頁瀏覽器,導航輸入 http://127.0.0.1:1337. 起作用了什麼? 恭喜你運行了你的第一個Node.js應用!

提供網站服務

你會擔憂我會只留下一個"Hello World" 範例就收工了? 如果我們知道如何去運行一個HTML文件,那將會更加的美好. 添加一個"index.html" 文件,裡面可以是任何HTML內容. 將會像這樣:
 

<html>
 <head>
  <title>Sample Node.js Website</title>
 </head>
 <body>
  <p>This is the home page for you Node.js website.</p>
 </body>
</html>
登入後複製

是時候運行應用程式了。建立一個可以叫任何名字的新文件,例如 "index.js", 並把如下的js程式碼加到裡面:
 

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');
登入後複製

事情在這裡開始變得更加有趣了. 注意開頭的地方多了一行"require" . 你正在往你的應用中帶入需要的依賴程序. 這像是C#中用來調用依賴程序的" using" 命名空間指令.

透過在PowerShell中輸入: node index.js 來運行"index.js"(不要忘了敲擊Ctrl-C來退出上一個Node應用的運行,或者在這次使用一個新的端口號).在你的瀏覽器中,導航到http://127.0.0.1:1337 ,你就應該會看到你的HTML檔案了. 你將可能在這點成就上感到有些激動, 但如果你想我,就會對它產生一些複雜的感覺. 這還只是低級別的編程,如果我不得不去考慮讀取/流媒體文件,還有有關每次應該發送什麼狀態這些問題的時候,世界很快就會變得煩惱重重. 向ExpressJS道好吧!

使用Node包管理器

Node.js有一個再次讓我們感覺世界美好的搭檔. ExpressJS 屏蔽掉了需要在Node.js進行的老調重彈,讓你可以直接進入web開發. 它是一個可以讓你構建單頁,多頁還有混合型網頁應用程式的網頁框架. 沒有它你在Node.js 領域是不會有盼頭滴!

首先使用NPM 來安裝它. 為此,再一次打開PowerShell並切換到你的應用程式的路徑. 現在輸入: npm install express. 它將創建一個叫做"node_modules" 來安裝ExpressJS. 從這個角度上看,你的Node模組將會放到那裡,有點像在.NET應用中的"bin"目錄, 從這裡你可以調用或者"require"你的依賴程序.
 
ExpressJS入門

現在任意建立一個新檔案, 例如 "server.js", 並把下面的程式碼貼進去:
 

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 和谐共存:

  • IISNode: 这是一个在你的IIS站点让Node.js像一个应用池那样运行的很聪明的点子, 同在IIS中与运行PHP很像. 事实上,Azure就是用这个在其平台上运行Node.js的.
  • WinServ: 它让 Node.js 像一个Windows服务那样运行. 它实际上是对流行了 NSSM (Non-Sucking Service Manager)的一个对Node.js友好的封装. 一旦作为一个服务运行,你就可以使用IIS的应用请求路由(ARR) 来代理向你的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靠拢了, 对你而言同样是不是时候来辅助行动了呢?

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

<🎜>:泡泡膠模擬器無窮大 - 如何獲取和使用皇家鑰匙
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
北端:融合系統,解釋
3 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

Java教學
1664
14
CakePHP 教程
1423
52
Laravel 教程
1318
25
PHP教程
1269
29
C# 教程
1248
24
mysql怎麼複製粘貼 mysql怎麼複製粘貼 Apr 08, 2025 pm 07:18 PM

MySQL 中的複制粘貼包含以下步驟:選擇數據,使用 Ctrl C(Windows)或 Cmd C(Mac)複製;在目標位置右鍵單擊,選擇“粘貼”或使用 Ctrl V(Windows)或 Cmd V(Mac);複製的數據將插入到目標位置,或替換現有數據(取決於目標位置是否已存在數據)。

vs code 可以在 Windows 8 中運行嗎 vs code 可以在 Windows 8 中運行嗎 Apr 15, 2025 pm 07:24 PM

VS Code可以在Windows 8上運行,但體驗可能不佳。首先確保系統已更新到最新補丁,然後下載與系統架構匹配的VS Code安裝包,按照提示安裝。安裝後,注意某些擴展程序可能與Windows 8不兼容,需要尋找替代擴展或在虛擬機中使用更新的Windows系統。安裝必要的擴展,檢查是否正常工作。儘管VS Code在Windows 8上可行,但建議升級到更新的Windows系統以獲得更好的開發體驗和安全保障。

sublime寫好代碼後如何運行 sublime寫好代碼後如何運行 Apr 16, 2025 am 08:51 AM

在 Sublime 中運行代碼的方法有六種:通過熱鍵、菜單、構建系統、命令行、設置默認構建系統和自定義構建命令,並可通過右鍵單擊項目/文件運行單個文件/項目,構建系統可用性取決於 Sublime Text 的安裝情況。

如何解決Laravel中復雜的BelongsToThrough關係問題?使用Composer可以! 如何解決Laravel中復雜的BelongsToThrough關係問題?使用Composer可以! Apr 17, 2025 pm 09:54 PM

在Laravel開發中,處理複雜的模型關係一直是個挑戰,特別是當涉及到多層級的BelongsToThrough關係時。最近,我在處理一個多級模型關係的項目中遇到了這個問題,傳統的HasManyThrough關係無法滿足需求,導致數據查詢變得複雜且低效。經過一番探索,我找到了staudenmeir/belongs-to-through這個庫,它通過Composer輕鬆安裝並解決了我的困擾。

Debian中Tigervnc支持哪些操作系統 Debian中Tigervnc支持哪些操作系統 Apr 12, 2025 pm 10:15 PM

開源VNC工具Tigervnc兼容眾多操作系統,其中包括Windows、Linux和macOS。本文將詳細介紹Tigervnc在Debian系統上的應用情況。 Tigervnc在Debian系統的應用系統集成:在Debian系統中,Tigervnc作為VNC服務器組件被集成到系統中。用戶可通過命令行工具(例如vncserver)啟動VNC服務,並自定義顯示設置,如分辨率和色彩深度。跨平台連接:Tigervnc客戶端支持Windows、Linux和macOS,這意味著用戶可以從任何運行這

Mac系統中的系統維護與優化工具推薦 Mac系統中的系統維護與優化工具推薦 Apr 12, 2025 pm 04:45 PM

Mac 系統維護包括:磁盤管理(使用 OmniDiskSweeper 清理磁盤空間,用磁盤工具檢查磁盤錯誤)內存管理(用 Activity Monitor 監控內存佔用,結束佔用過高的進程)啟動項管理(用 Linc 或 LaunchControl 管理啟動項,禁用不必要的啟動項)系統緩存清理(用 CleanMyMac X 或手動清理系統緩存)軟件更新(及時更新系統和應用程序)定期備份(使用 Time Machine 定期備份數據)良好使用習慣(不過度安裝應用程序,定期清理文件,監控系統日誌)

laravel安裝代碼 laravel安裝代碼 Apr 18, 2025 pm 12:30 PM

要安裝 Laravel,需依序進行以下步驟:安裝 Composer(適用於 macOS/Linux 和 Windows)安裝 Laravel 安裝器創建新項目啟動服務訪問應用程序(網址:http://127.0.0.1:8000)設置數據庫連接(如果需要)

git軟件安裝 git軟件安裝 Apr 17, 2025 am 11:57 AM

安裝 Git 軟件包括以下步驟:下載安裝包運行安裝包驗證安裝配置 Git安裝 Git Bash(僅限 Windows)

See all articles