【Node.js】深度解析搭建后台服务器-http模块
? 作者簡介:一名將要邁入大三的大學生,致力于提高前端開發能力
? 個人主頁:前端小白在前進的主頁
🔥 系列專欄 : node.js學習專欄
?? 個人社區 : 個人交流社區
🍀 學習格言: ?? 打不倒你的會使你更強!??
🔥前言
這篇文章將會教會你前端工程師怎么搭建后臺服務器,做自己的后端開發,同時,在這篇文章開始你就開始正式進入全棧的道路咯!本片文章將細解http模塊,在開始前我們將復習一點計算機網絡的知識。
📃目錄
- 客戶端與服務器
- IP地址
- 域名和域名服務器
- 端口號
- 什么是http模塊
- 創建基本的web服務器
- 小結
客戶端與服務器
客戶端 : 在網絡節點中,負責消費資源的電腦,叫做客戶端,例如:在網絡中你用客戶端與服務器建立連接,服務器提供的服務信息通過你的客戶端給你展示出來。
服務器 : 負責對外提供網絡資源的電腦,叫做服務器。例如:我們在訪問搜索網站時,是誰給你提供你想搜索的資源呢?這個東西就是服務器,服務器給你提供你需要的資源!
服務器和普通電腦的區別在于:服務器上安裝了web服務軟件。例如:Apache等,通過安裝這些服務器軟件,就可以把一臺普通的電腦變成一臺web服務器
IP地址
IP 地址就是互聯網上每臺計算機的唯一地址,因此 IP 地址具有唯一性。如果把“個人電腦”比作“一臺電話”,那么“IP地址”就相當于“電話號碼”,只有在知道對方 IP 地址的前提下,才能與對應的電腦之間進行數據通信。
IP 地址的格式:通常用“點分十進制”表示成(a.b.c.d)的形式,其中,a,b,c,d 都是 0~255 之間的十進制整數。例如:用點分十進表示的 IP地址(192.168.1.1)
注意 :
域名和域名服務器
盡管 IP 地址能夠唯一地標記網絡上的計算機,但IP地址是一長串數字,不直觀,而且不便于記憶,于是人們又發明了另一套字符型的地址方案,即所謂的域名(Domain Name)地址。
域名服務器:IP地址和域名是一一對應的關系,這份對應關系存放在一種叫做域名服務器(DNS,Domain name server)的電腦中。使用者只需通過好記的域名訪問對應的服務器即可,對應的轉換工作由域名服務器實現。因此,域名服務器就是提供 IP 地址和域名之間的轉換服務的服務器。
注意:
端口號
計算機中的端口號,就好像是現實生活中的門牌號一樣。通過門牌號,外賣小哥可以在整棟大樓眾多的房間中,準確把外賣送到你的手中。
同樣的道理,在一臺電腦中,可以運行成百上千個 web 服務。每個 web 服務都對應一個唯一的端口號。客戶端發送過來的網絡請求,通過端口號,可以被準確地交給對應的 web 服務進行處理。
注意:
什么是http模塊
http 模塊是 Node.js 官方提供的、用來創建 web 服務器的模塊。通過 http 模塊提供的 http.createServer() 方法,就能方便的把一臺普通的電腦,變成一臺 Web 服務器,從而對外提供 Web 資源服務。
在 Node.js 中,我們不需要使用 Apache 等這些第三方 web 服務器軟件。因為我們可以基于 Node.js 提供的 http 模塊,通過幾行簡單的代碼,就能輕松的手寫一個服務器軟件,從而對外提供 web 服務。
創建基本的web服務器
創建web服務器有四個步驟:
👉 1. 導入我們的http模塊
👉 2. 創建web服務器實例(http.createServer())
👉 3. 為服務器實例綁定request事件,監聽客戶端的請求(server.on())
👉 4. 啟動服務器(server.listen())
只要服務器接收到了客戶端的請求,就會調用通過 server.on() 為服務器綁定的 request 事件處理函數。
- req是請求對象,包含了客戶端相關的屬性和數據,如果想在事件處理函數中,訪問與客戶端相關的數據或屬性,例如:可以使用req.url,req.method,分別來判斷客戶端請求的url地址和發送請求的方法!
- res是響應對象,包含了服務器相關的屬性和數據,在服務器的 request 事件處理函數中,如果想訪問與服務器相關的數據或屬性,例如 : 可以使用res.end()進行在頁面的簡單渲染。
- 我們還需要設置一下響應頭,為了避免中文亂碼的情況
小結
node.js的一個最大的好處在于我們不用依靠于第三方web服務器軟件,我們僅僅通過幾行代碼就可以創建我們的后臺服務器了,方便我們的開發,而node.js參與的項目中http模塊是一定會使用到的,我們需要依靠的接口與http模塊息息相關。
學好http模塊,就意味著我們正式進入全棧的道路咯!😬
👑書寫不易,希望大家能夠給予三連支持,期待我更好的文章喲👑
總結
以上是生活随笔為你收集整理的【Node.js】深度解析搭建后台服务器-http模块的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: php超级玛丽,html关于超级玛丽游戏
- 下一篇: 服务器的搭建