Node學習之(第二章 http模組)

2022-03-12 10:41:56 字數 1754 閱讀 3373

繼續上一節的**,今天我們來聊聊node中怎麼搭建乙個簡單的web伺服器。平時大家在擼碼的過程中,經常需要向伺服器傳送請求,然後伺服器接受請求,響應資料。今天我們就來自己手寫乙個簡單伺服器,根據前端請求,我們來響應相關資料。

http--模組提供了搭建本地伺服器的api,首先我們在專案中引入;

let http = require('http')
引入之後我們利用http.createserver()方法得到乙個伺服器例項。

let server = http.createserver() // createserver()方法返回乙個server例項,所以我們需要乙個變數來接收
經過以上兩步,我們已經搭建好了乙個伺服器例項,然後我們給伺服器例項繫結接收request的事情處理函式,**如下:

server.on('request', (req, res) => )

// 給伺服器繫結接收請求的處理事件,當伺服器接收到客戶端傳送的請求後,會呼叫後面的處理函式,處理函式接收兩個引數:請求資訊物件,響應資訊物件。

繫結監聽埠號,開啟伺服器。**如下:

server.listen(3000, () => )

// server.listen()用來繫結監聽的埠號,可以傳入第二個引數,當伺服器開啟成功後,觸發後面的**函式

最後看到的效果如下圖所示:

我們看到請求路徑被列印在了cmd視窗中。

好了,經過這簡單的操作是不是已經完成了乙個伺服器的簡單搭建,接下來我們來實現乙個需求:

我們實現這個需求,只需要在繫結伺服器監聽的事件處理函式中獲取到使用者的請求路徑,然後根據不同路徑返回不同資料即可,這個也不難。詳情**看下:

]// 響應的資料型別必須是字串或者二進位制資料

res.end(json.stringify(arr))

} else

})server.listen(3000, () => )

最後實現的效果圖如下:

我們看到我們請求不同的路徑,伺服器給我們返回了不同的內容,並且顯示在了網頁中。

本倉庫是自己node.js學習過程的真實記錄,以後會每天更新一些新的知識點,希望可以對想要學node.js的同學有一些幫助,歡迎star,你們的點讚是我更新的持久動力。同時如果你覺得本倉庫中的一些知識點有錯誤也可以issue我,方便後期我訂正!

本倉庫同時在和掘金更新,歡迎寫部落格的朋友一起學習交流。

找我掘金找我github找我

第二章 HTTP與HTTPS

1 http介紹 http hyper text transfer protocol 超文字傳輸協議 2 http與https區別 1 https協議需要到ca申請證書,一般免費證書較少,因而需要一定費用。2 http是超文字傳輸協議,資訊是明文傳輸,https則是具有安全性的ssl加密傳輸協議。3...

C primer之第二章

閱讀至2.5.2時,發現乙個不知道的知識點 如果某個型別的別名指代的是復合型別或是常量,那麼它用到宣告語句裡面就會產生意想不到的後果,例如下面的宣告語句用到了型別pstring,它實際上是型別char 的別名 typedef char pstring 1 const pstring cstr 0 c...

第二章學習筆記

在c 中,陣列下標從0開始,而不是1.c 不支援陣列的抽象,也不支援對整個陣列的操作。在c 中,物件可以靜態分配 即編譯器在處理程式源 時分配,也可以動態分配 即程式執行時,用執行時刻庫函式來分配。靜態與動態記憶體分配的兩個主要區別是 1 靜態物件是有名字的變數,可以直接對你進行操作。而動態物件是沒...