這篇文章適合誰
這篇文章適合想學習Node.js這個框架對於JavaScript並且對於JavaScript有一些認識的讀者,本篇文章將用hello world這個在學習每個程式語言時都會先接觸到的範例,讓你先初步認識Node.js。
何謂Node.js
Node.js顧名思義便是使用JavaScript語言作為基礎的框架,特別的是,相對於jQuery或是YUI等在瀏覽器中運行使用的JavaScript框架,Node.js是作為網站程式的後端框架,就如同PHP或是Java一般開發網站。
換句話說,JavaScript不只可以跑在瀏覽器中,還可以當做網站的伺服器。主要的原因是在於隨著Gmail等AJAX網站以及技術的興起,許多的程式開發者紛紛投入心力鑽研JavaScript,並且有許多開發心得、優化技巧陸續被發掘,加上瀏覽器之間的競爭越來越激烈,JavaScript的執行效能持續性的突破,因此最終便誕生了Node.js。
Hello World
在使用Node.js創建“Hello, World”應用程序之前,讓我們看看Node.js的應用程序的部分。Node.js應用程序由以下三個重要組成部分:
導入需要模塊: 我們使用require指令加載Node.js模塊。
創建服務器: 服務器將監聽類似Apache HTTP Server客戶端的請求。
讀取請求,並返回響應: 在前麵的步驟中創建的服務器將讀取客戶端發出的HTTP請求,它可以從一個瀏覽器或控製台並返回響應。
導入所需要的模塊
我們使用require指令來加載HTTP模塊和存儲返回HTTP,例如HTTP變量,如下所示:
var http = require("http");
在接下來的步驟中,我們使用HTTP創建實例,並調用http.createServer()方法來創建服務器實例,然後使用服務器實例監聽相關聯的方法,把它綁定在端口8081。 通過它使用參數的請求和響應函數。編寫示例實現返回 “Hello World”
http.createServer(function (request, response) { // Send the HTTP header // HTTP Status: 200 : OK // Content Type: text/plain response.writeHead(200, {'Content-Type': 'text/plain'}); // Send the response body as "Hello World" response.end('Hello World\n'); }).listen(8081); // Console will print the message console.log('Server running at http://127.0.0.1:8081/');
測試請求和響應
讓我們將以上步驟儲存成一個名為main.js的檔案,並啟動HTTP伺服器
var http = require("http"); http.createServer(function (request, response) { // Send the HTTP header // HTTP Status: 200 : OK // Content Type: text/plain response.writeHead(200, {'Content-Type': 'text/plain'}); // Send the response body as "Hello World" response.end('Hello World\n'); }).listen(8081); // Console will print the message console.log('Server running at http://127.0.0.1:8081/');
現在執行main.js來啟動服務器
$ node main.js
再來就可以去瀏覽器輸入http://127.0.0.1:8081/網址就看可以在網頁上看到Hello World囉。
結語
已上是關於Node.js的一些基礎知識,希望能夠藉由這篇文章幫助到你。事實上快樂學程式也推出了不同Javascript框架的課程,來這裡擴充你的知識領域吧!
如果你的入門還在單打獨鬥,歡迎來到快樂學程式找到志同道合的夥伴,你的自學之路不孤單。