Node.js開發入門(一)——安裝Node.js及編輯器配置
Node.js是一個輕鬆構建快速,可擴充套件的網路應用平臺建立在Chrome的JavaScript執行。Node.js使用事件驅動,非阻塞I/O模型,使得它重量輕,高效,完美的資料密集型實時應用程式執行在分散式裝置。
Node.js是讓JavaScript脫離瀏覽器執行在伺服器的一個平臺,不是語言;Node.js採用的Javascript引擎是來自Google
Chrome的V8;執行在瀏覽器外不用考慮頭疼的Javascript相容性問題採用單執行緒、非同步IO與事件驅動的設計來實現高併發(非同步事件也在一定程度上增加了開發和除錯的難度);Node.js內建一個HTTP伺服器,所以對於網站開發來說是一個好訊息;
在Windows上安裝 Node.js很方便,我們只需要訪問node.js官網 http://www.nodejs.org/,點選Download連結,然後選擇Windows Installer(我的機器是64bit可選),下載安裝包。下載完成後直接雙擊安裝,和其它一般軟體安裝一樣:
選擇安裝位置:
安裝完成:
到此我們已經安裝Node.sj完成,以下是Node.js安裝目錄結構:
啟動node
在“開始”-》“程式”找到
直接雙擊node.js
測試一個簡單例項:輸出“Hello,World!”
我們進入node之後,可以輸入:
console.log("Hello,World!");
然後我們就會看到命令列裡輸出了:Hello,World!
另外,也可以這樣做:在 node.js 的安裝目錄下,建立一個檔名為:hello.js,程式碼如下:
/** **/
var sys = require("util"); sys.puts("Hello world");
下面,我們來測試一下node.js是否可以正確執行,開啟node.js命令提示符:
執行如下圖所示:
以上是使用命令列建立的簡單Node.js程式,下面我們來看一個複雜點的應用服務程式。 例如,D:Program Files odejs下建立一個node資料夾,然後在裡面建立一個 firstapp.js,開啟 firstapp,js 輸入以下程式碼:
var http = require('http'); http.createServer(function (req, res) { res.writeHead(200, {'Content-Type': 'text/plain'}); res.end('Hello World - Node.js Work. '); }).listen(5656, '127.0.0.1'); console.log('Server running at http://127.0.0.1:5656/');
然後開啟命令列,進入node目錄,然後在命令列裡執行:node firstapp.js 命令,再開啟瀏覽器在瀏覽器裡輸入地址: http://127.0.0.1:5656/或 http://localhost:5656,即可執行 firstapp檔案的程式碼。
執行效果如下:
如果沒有什麼語法之類的錯誤,就是以上的效果了。
安裝環境:
(一)、Windows 下安裝 Node.js 環境
到Node官網http://nodejs.org就可以下載到安裝包,我是Win7 64位,訪問Node官網,可以看到最新版本是0.12.7,點選INSTALL就可以下載msi檔案,然後雙擊就可以安裝了。
安裝過程非常簡單,選中所有選項,Next即可。
msi會把npm(Node Package Manager)一併裝上,還會幫你設定好環境變數,把node、npm等加入到path中,所以,你只要開啟命令列視窗,就可以幹活了。
開始選單裡會新增一個Node.js的目錄,如下圖所示:
點選“Node.js command prompt”選單,就會進入Node.js的命令列環境,如下圖所示:
在這裡可以直接使用node和npm。
如果你輸入node並回車,就進入Node的互動式環境,可以輸入一些JavaScript命令來看看,比如console.log(“Hello Node.js!”),有反應的哈。輸入node的效果,等同於點選開始選單裡的Node.js選單。
如果你輸入npm並回車,就會看到npm的使用幫助,如下圖:
基礎的環境就這麼著了,很簡單,接下來我們來發發神經,走走老路,搞個HelloWorld看看。
HelloWorld網站
程式碼就是這麼簡單:
// 引入http模組
var http = require("http");
// 建立server,指定處理客戶端請求的函式
http.createServer(
function(request, response) {
response.writeHead(200, {"Content-Type": "text/plain"});
response.write("Hello World!");
response.end();
}
).listen(8000);
console.log("Hello World is listening at port 8000");
儲存為HelloWorld.js,然後在Node.js的命令列環境下,進入HelloWorld.js所在目錄,執行 node HelloWorld.js,網站就可以執行起來了。
我們簡單的示例,對任何請求,都返回“Hello World!”文字串,你可以在瀏覽器裡輸入“http://localhost:8000”看看效果,我這裡是醬紫的:
額,神奇世界都是這麼開始的……開始選單裡有Node.js documentation子選單,可以直通Node.js線上文件,更多精彩可以從那裡開始。
(二)、Linux 下安裝 Node.js 環境(原始碼編譯安裝)
Linux安裝Node.js(原始碼編譯安裝)環境:
Ubuntu 12.04.2 LTS (GNU/Linux 3.5.0-23-generic i686)
下載Node.js安裝包,請參考網址:http://nodejs.org/download/
這裡選擇原始碼包安裝方式,安裝過程如下:
登陸到Linux終端,進入/usr/local/src目錄,如下:
[email protected]:~# cd /usr/local/src/
下載nodejs安裝包:
#wget http://nodejs.org/dist/v0.10.17/node-v0.10.17.tar.gz
2,解壓檔案並安裝
# tar xvf node-v0.10.17.tar.gz # cd node-v0.10.17 # ./configure # make # make install # cp /usr/local/bin/node /usr/sbin/ 檢視當前安裝的Node的版本 # node -v v0.10.17到此整個安裝已經完成,如果在安裝過程有錯誤問題,請參考以下解決: 可能出現的問題:
- The program 'make' is currently not installed. You can install it by typing: apt-get install make
# apt-get install make
- g++: Command not found 沒有安裝過g++,現在執行安裝:
測試程式 hello.js:
console.log("Hello World");# node helloworld.js
另外的一個例項:WebServer
這個簡單Node 編寫的 Web伺服器,為每個請求響應返回“Hello World”。
var http = require('http'); http.createServer(function (req, res) { res.writeHead(200, {'Content-Type': 'text/plain'}); res.end('Hello World '); }).listen(1337); console.log('Server running at port 1337 ');要執行伺服器,將程式碼編寫到檔案example.js 並執行 node 程式命令列:
# node example.jsServer running at http://127.0.0.1:1337/
有興趣的朋友可以嘗試下面一個簡單的TCP伺服器監聽埠1337 並回應的一個例子:
var net = require('net'); var server = net.createServer(function (socket) { socket.write('Echo server '); socket.pipe(socket); }); server.listen(1337, '127.0.0.1');
NPM簡介:
Windows的Node.js安裝包安裝裡包含了Node Pageaged Modules https://npmjs.org/ (npm),這個node.js本身具有基本的模組,有這了npm可以安裝豐富的node.js庫來完成實際開發需求。
常用命令介紹:
檢視幫助
npm help或npm h
安裝模組
npm intstall <Module Name>
在全域性環境中安裝模組(-g:啟用global模式)
npm install -g <Module Name>
解除安裝模組
npm uninstall <Moudle Name>
顯示當前目錄下安裝的模組
npm list
安裝成功後,會在PATH使用者環境變數和系統環境中分別新增npm和node.js路徑
開發工具:
做.NET開發的可以選擇WebMatrix3 ,下載直接安裝,操作很方便,不做太多解釋,用了一段時間,可以直接建Nodejs專案,如果只在Windows環境下開發,推薦用它
我最終還是選擇了Sublime,可以在各平臺下保持個統一個開發工具,配置方法網上有很多
Sublime下載地址: http://www.sublimetext.com/ (軟體無需註冊,使用過程中時不時會彈出需要註冊的視窗,取消即可)
Sublime Node.js開發環境配置
下載並安裝Node.js安裝包後再開始配置
1.先安裝好Sublime Text 2
2.執行Sublime,選單上找到Tools ---> Build System ---> new Build System
3.在檔案中複製入
{
"cmd": ["node", "$file"],
"file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)",
"selector": "source.javascript"
}
4.儲存檔案為NodeJs.sublime-build
5.選單上找到Tools ---> Build System --->選擇 NodeJs
6.安裝Package Control;執行Sublime,按下快捷鍵Ctrl + `;在控制檯中輸入如下並回車;
import urllib2,os,hashlib; h = '7183a2d3e96f11eeadd761d777e62404' + 'e330c659d4bb41d3bdf022e94cab3cd0'; pf = 'Package Control.sublime-package'; ipp = sublime.installed_packages_path(); os.makedirs( ipp ) if not os.path.exists(ipp) else None; urllib2.install_opener( urllib2.build_opener( urllib2.ProxyHandler()) ); by = urllib2.urlopen( 'http://sublime.wbond.net/' + pf.replace(' ', '%20')).read(); dh = hashlib.sha256(by).hexdigest(); open( os.path.join( ipp, pf), 'wb' ).write(by) if dh == h else None; print('Error validating download (got %s instead of %s), please try manual install' % (dh, h) if dh != h else 'Please restart Sublime Text to finish installation')
7.安裝完成後重新啟動Sublime,按下快捷鍵Ctrl + Shift + P; 輸入install,選擇Install Package並回車
8.輸入nodejs並選擇Nodejs安裝(可以裝上JavaScript & NodeJs Snippets)
9.新建test.js檔案,輸入 console.log('Hello Node.js'); 按快捷鍵 Ctrl + B 執行,成功輸出! 如下圖
這裡配置Sublime Node.js開發環境就成功了!
擴充套件:安裝多版本管理器
安裝多版本管理器nvmw(Node開發指南一書中用的NVM,Windows上好像不行,在www.npmjs.org中找了這個,雖然學習用不上,先裝上再說)
安裝命令
npm install -g nvmw
因為沒有使用到它,所有就不做多的介紹,詳細檢視
下次我們會進一步分析HelloWorld,介紹nodejs的基本程式結構和HelloWorld用到的一些知識點。