Node.js 建立第一個應用

Node.js 建立第一個應用

如果我們使用 PHP 來編寫後端的程式碼時,需要 Apache 或者 Nginx 的 HTTP 伺服器,並配上 mod_php5 模組和 php-cgi。

從這個角度看,整個"接收 HTTP 請求並提供 Web 頁面"的需求就不需要 PHP 來處理。

不過對 Node.js 來說,概念完全不一樣了。使用 Node.js 時,我們不僅僅 在實現一個應用,同時還實現了整個 HTTP 伺服器。事實上,我們的 Web 應用以及對應的 Web 伺服器基本上是一樣的。

在我們建立 Node.js 第一個 "Hello, World!" 應用前,讓我們先了解下 Node.js 應用是由哪幾部分組成的:

  1. 引入 required 模組:我們可以使用 require 指令來載入 Node.js 模組。

  2. 建立伺服器:伺服器可以監聽客戶端的請求,類似於 Apache 、Nginx 等 HTTP 伺服器。

  3. 接收請求與響應請求 伺服器很容易建立,客戶端可以使用瀏覽器或終端傳送 HTTP 請求,伺服器接收請求後返回響應資料。


建立 Node.js 應用

步驟一、引入 required 模組

我們使用 require 指令來載入 http 模組,並將例項化的 HTTP 賦值給變數 http,例項如下:

var http = require("http");

步驟二、建立伺服器

接下來我們使用 http.createServer() 方法建立伺服器,並使用 listen 方法繫結 8888 埠。 函式通過 request, response 引數來接收和響應資料。

例項如下,在你專案的根目錄下建立一個叫 server.js 的檔案,並寫入以下程式碼:

var http = require('http');

http.createServer(function (request, response) {

    // 傳送 HTTP 頭部 
    // HTTP 狀態值: 200 : OK
    // 內容型別: text/plain
    response.writeHead(200, {'Content-Type': 'text/plain'});

    // 傳送響應資料 "Hello World"
    response.end('Hello World\n');
}).listen(8888);

// 終端列印如下資訊
console.log('Server running at http://127.0.0.1:8888/');

以上程式碼我們完成了一個可以工作的 HTTP 伺服器。

使用 node 命令執行以上的程式碼:

node server.js
Server running at http://127.0.0.1:8888/

接下來,開啟瀏覽器訪問 http://127.0.0.1:8888/,你會看到一個寫著 "Hello World"的網頁。

分析Node.js 的 HTTP 伺服器:

  • 第一行請求(require)Node.js 自帶的 http 模組,並且把它賦值給 http 變數。
  • 接下來我們呼叫 http 模組提供的函式: createServer 。這個函式會返回 一個物件,這個物件有一個叫做 listen 的方法,這個方法有一個數值引數, 指定這個 HTTP 伺服器監聽的埠號。

Gif 例項演示

接下來我們通過 Gif 圖為大家演示例項操作: