Node.js 建立第一個應用

來源:互聯網
上載者:User

標籤:

如果我們使用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/plainresponse.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.jsServer 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 伺服器監聽的連接埠號碼。

Node.js 建立第一個應用

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.