- Node.js權威指南
- 陸凌牛
- 792字
- 2019-01-01 00:13:24
1.4 一個簡單的示例應用程序
接下來,讓我們來看一個最簡單的Node.js示例應用程序,其代碼如代碼清單1-1所示。
代碼清單1-1 一個最簡單的Node.js示例應用程序
var http = require('http'); http.createServer(function (req, res) { res.writeHead(200, {'Content-Type': 'text/html'}); res.write('<head><meta charset="utf-8"/></head>'); res.end('你好\n'); }).listen(1337, "127.0.0.1"); console.log('Server running at http:// 127.0.0.1:1337/');
在這段代碼中,我們首先使用http對象來引用http模塊。代碼如下所示:
var http = require('http');
接下來,我們使用http模塊的createServer方法來創建用于接收HTTP客戶端請求并返回響應的HTTP服務器應用程序。在createServer方法中,定義了當服務器接收到客戶端請求時所執行的回調函數,在該回調函數中指定當服務器接收到客戶端請求時所要執行的處理,代碼如下所示:
http.createServer(function (req, res) { // 回調函數中的代碼略 })
在回調函數中,使用兩個參數,其中第一個參數代表客戶端請求對象,第二個參數代表服務器端所做出的響應對象。
在我們的示例函數中,首先通過響應對象的writeHead方法書寫響應頭,同時將響應頭中的狀態碼定義為200,將內容類型定義為text/html,表示返回一段HTML代碼,代碼如下所示:
res.writeHead(200, {'Content-Type': 'text/html'});
然后通過響應對象的write方法書寫一行HTML代碼,在本例中書寫一個<head>標簽,并且在<head>標簽中通過使用meta屬性將HTML網頁所使用的字符集定義為UTF-8字符集,目的是為了能夠在瀏覽器中顯示中文,代碼如下所示:
res.write('<head><meta charset="utf-8"/></head>');
最后,通過響應對象的end方法輸出一行HTML代碼并結束響應流,代碼如下所示:
res.end('你好\n');;
http模塊的createServer方法將返回被創建的HTTP服務器對象,我們使用該對象的listen方法指定該服務器使用端口及服務器綁定地址,并對該端口進行監聽,代碼如下所示:
http.createServer(function (req, res) { // 回調函數中的代碼略 }).listen(1337, "127.0.0.1");
示例代碼中的最后一行代表向控制器窗口輸出“Server running at http://127.0.0.1:1337/”字符串,代碼如下所示:
console.log('Server running at http:// 127.0.0.1:1337/');
將該示例代碼保存在app.js文件(文件名可任意定義)中,然后在操作系統的命令行窗口中輸入以下命令。(為了方便更多讀者的閱讀,本書中使用Windows操作系統中的命令行窗口進行展示。)
node app.js
命令行窗口中將顯示“Server running at http://127.0.0.1:1337/”文字,如圖1-1所示。

圖1-1 運行app.js文件
在任何瀏覽器地址欄中輸入“http://localhost:1337/”地址,瀏覽器窗口中顯示“你好”文字,如圖1-2所示。

圖1-2 第一個示例程序的運行結果
- Implementing Modern DevOps
- AngularJS Web Application Development Blueprints
- Python從菜鳥到高手(第2版)
- Java程序設計與計算思維
- Data Analysis with IBM SPSS Statistics
- Scratch 3游戲與人工智能編程完全自學教程
- Visual Basic程序設計習題解答與上機指導
- 鋒利的SQL(第2版)
- PySide GUI Application Development(Second Edition)
- Learning Data Mining with R
- Machine Learning in Java
- Quantum Computing and Blockchain in Business
- 邊玩邊學Scratch3.0少兒趣味編程
- Java從入門到精通(視頻實戰版)
- Kotlin語言實例精解