如何使用Node.js構建一個HTTP伺服器
以下是我們在Node.js介紹中使用的HTTP網絡伺服器,作為Node的Hello World應用程式。
const http = require('http')
const hostname = 'localhost'
const port = 3000
const server = http.createServer((req, res) => {
res.statusCode = 200
res.setHeader('Content-Type', 'text/plain')
res.end('Hello World\n')
})
server.listen(port, hostname, () => {
console.log(`Server running at http://${hostname}:${port}/`)
})
讓我們簡單分析一下。我們導入了http
模組。
我們使用這個模組來創建一個HTTP伺服器。
伺服器被設定為在指定的主機名localhost
上,監聽3000端口。當伺服器準備就緒時,調用listen
回調函數。
我們傳遞的回調函數是在每次收到請求時都會執行的函數。每當收到新的請求時,都會調用request
事件,並提供兩個對象:一個請求(http.IncomingMessage
對象)和一個響應(http.ServerResponse
對象)。
request
提供了請求的詳細信息。通過它,我們可以訪問請求標頭和請求數據。
response
用於填充我們將返回給客戶端的數據。
在這個例子中,我們通過res.statusCode = 200
將statusCode屬性設置為200,表示請求成功。
我們還設置了Content-Type標頭:
res.setHeader('Content-Type', 'text/plain')
並且我們通過將內容作為end()
方法的參數來關閉響應:
res.end('Hello World\n')