欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

node.js?http模塊概念詳解

 更新時間:2022年01月24日 15:19:59   作者:六葉草~  
http?模塊是?Node.js?官方提供的、用來創(chuàng)建?web?服務器的模塊。通過?http?模塊提供的http.createServer()?方法,就能方便的把一臺普通的電腦,變成一臺?Web?服務器,從而對外提供?Web?資源服務,本文給大家介紹node.js?http模塊的相關知識,感興趣的朋友一起看看吧

node.js-http模塊

服務器相關概念什么是 http 模塊。

服務器相關概念

IP地址
IP地址:是互聯(lián)網(wǎng)設備的唯一標識。只有在知道對方 IP 地址的前提下,才能與對應的電腦之間進行數(shù)據(jù)通信。

IPV4:點分十進制表示(32位) 192.168.101.15
IPV6:采用冒號十六進制表示(128位) 4A::5B::...

注意
在開發(fā)期間,自己的電腦既是一臺服務器,也是一個客戶端,127.0.0.1 這個IP 地址就是本機測試地址,方便測試。

域名

域名平時上網(wǎng)所使用的網(wǎng)址。IP地址與域名是對應的關系,在瀏覽器的地址欄中輸入域名,會有專門的服務器將域名解析為對應的IP地址,從而找到對應的服務器。

注意
▲ 單純使用 IP 地址,互聯(lián)網(wǎng)中的電腦也能夠正常工作。但是有了域名的加持,能讓互聯(lián)網(wǎng)的世界變得更加方便。
▼ 在開發(fā)測試期間, 127.0.0.1 對應的域名是 localhost,它們都代表我們自己的這臺電腦,在使用效果上沒有任何區(qū)別。

端口
Node.js開發(fā)者習慣使用3000作為Node.js服務器的端口,一般來說,不使用0到1024之間的數(shù)字,因為這是操作系統(tǒng)軟件,以及常用軟件占用的端口。

注意

▲ 每個端口號不能同時被多個 web 服務占用。
▼在實際應用中,URL 中的 80 端口可以被省略。

URL
URL又叫統(tǒng)一資源定位符,它是專為標識Internet網(wǎng)上資源位置而設的一種編址方式。

什么是 http 模塊

http 模塊是 Node.js 官方提供的、用來創(chuàng)建 web 服務器的模塊。通過 http 模塊提供的http.createServer() 方法,就能方便的把一臺普通的電腦,變成一臺 Web 服務器,從而對外提供 Web 資源服務。

http模塊的作用

◆在網(wǎng)絡節(jié)點中,負責消費資源的電腦,叫做客戶端;負責對外提供網(wǎng)絡資源的電腦,叫做服務器。

◆服務器和普通電腦的 區(qū)別 在于,服務器上安裝了 web 服務器軟件,例如:IIS、Apache 等。通過安裝這些服務器軟件,就能把一臺普通的電腦變成一臺 web 服務器。

◆在 Node.js 中,我們不需要使用 IIS、Apache 等這些第三方 web 服務器軟件。因為我們可以基于 Node.js 提供的http 模塊,通過幾行簡單的代碼,就能輕松的手寫一個服務器軟件,從而對外提供 web 服務。

創(chuàng)建最基本的web服務器

創(chuàng)建web 服務器的步驟

★導入 http 模塊
★ 創(chuàng)建 web 服務器實例
★為服務器實例綁定 request 事件,監(jiān)聽客戶端的請求
★啟動服務器

//1 - 導入 http 模塊
const http = require('http')
//2 - 創(chuàng)建 web 服務器實例(調(diào)用 http.createServer() 方法)
const server = http.createServer()
//3 - 為服務器實例綁定 request 事件
server.on('request', (req, res) => {
    //request事件,只要有客戶端來請求我們自己的服務器,就會觸發(fā)request事件,從而調(diào)用這個函數(shù)
    console.log('服務器被訪問')
})
//4 - 啟動服務器  (3000是端口, 后面是回調(diào)函數(shù))127.0.0.1 對應的域名是 localhost
server.listen(3000, () => {
    console.log('服務器運行在3000端口,請訪問http://localhost:3000')
})

req請求對象

request 對象中常用的有三個屬性,分別是:req.url req.method req.headers

req.url:客戶端的請求地址。
req.method :客戶端的請求方法。
req.headers:客戶端的請求頭信息。

//1 - 導入 http 模塊
const http = require('http')
//2 - 創(chuàng)建 web 服務器實例(調(diào)用 http.createServer() 方法)
const server = http.createServer()
//3 - 為服務器實例綁定 request 事件
server.on('request', (req, res) => {
    //request事件,只要有客戶端來請求我們自己的服務器,就會觸發(fā)request事件,從而調(diào)用這個函數(shù)
    console.log(req.method);
    console.log(req.url);
    console.log(req.headers);
    console.log('服務器被訪問')
})
//4 - 啟動服務器  (3000是端口, 后面是回調(diào)函數(shù))127.0.0.1 對應的域名是 localhost
server.listen(3000, () => {
    console.log('服務器運行在3000端口,請訪問http://localhost:3000')
})

在這里插入圖片描述

res 響應對象

在服務器的 request 事件處理函數(shù)中,如果想訪問與服務器相關的數(shù)據(jù) 或?qū)傩???赏ㄟ^res.end()
res.end() 方法的作用: 就是向客戶端發(fā)送指定的內(nèi)容,并且結(jié)束掉此次請求的處理過程。

//1 - 導入 http 模塊
const http = require('http')
//2 - 創(chuàng)建 web 服務器實例(調(diào)用 http.createServer() 方法)
const server = http.createServer()
//3 - 為服務器實例綁定 request 事件
server.on('request', (req, res) => {
    //request事件,只要有客戶端來請求我們自己的服務器,就會觸發(fā)request事件,從而調(diào)用這個函數(shù)
    res.end('Hello word');
})
//4 - 啟動服務器  (3000是端口, 后面是回調(diào)函數(shù))127.0.0.1 對應的域名是 localhost
server.listen(3000, () => {
    console.log('服務器運行在3000端口,請訪問http://localhost:3000')
})

中文亂碼問題

當調(diào)用 res.end() 方法,向客戶端發(fā)送中文內(nèi)容的時候,會出現(xiàn)亂碼問題,此時,需要手動設置內(nèi)容的編碼格式:res.setHeader('content-Type','text/html; charset=utf-8')

//1 - 導入 http 模塊
const http = require('http')
//2 - 創(chuàng)建 web 服務器實例(調(diào)用 http.createServer() 方法)
const server = http.createServer()
//3 - 為服務器實例綁定 request 事件
server.on('request', (req, res) => {
    //request事件,只要有客戶端來請求我們自己的服務器,就會觸發(fā)request事件,從而調(diào)用這個函數(shù)
    res.setHeader('content-Type','text/html; charset=utf-8')
    res.end('你好,世界');
})
//4 - 啟動服務器  (3000是端口, 后面是回調(diào)函數(shù))127.0.0.1 對應的域名是 localhost
server.listen(3000, () => {
    console.log('服務器運行在3000端口,請訪問http://localhost:3000')
})

到此這篇關于node.js http模塊的文章就介紹到這了,更多相關node.js http模塊內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • 詳解Node項目部署到云服務器上

    詳解Node項目部署到云服務器上

    本篇文章主要介紹了詳解Node項目部署到云服務器上,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-07-07
  • 簡單了解node npm cnpm的具體使用方法

    簡單了解node npm cnpm的具體使用方法

    這篇文章主要介紹了簡單了解node npm cnpm的具體使用方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-02-02
  • 詳解nodejs 文本操作模塊-fs模塊(一)

    詳解nodejs 文本操作模塊-fs模塊(一)

    這篇文章主要介紹了詳解nodejs 文本操作模塊-fs模塊(一),本篇文章詳細的介紹了文件及目錄的讀寫操作,有興趣的可以了解一下。
    2016-12-12
  • npm?install?404問題解決方案

    npm?install?404問題解決方案

    這篇文章主要給大家介紹了關于npm?install?404問題解決的相關資料,npm install命令既可以下載服務器上的模塊,也可以在本地創(chuàng)建自己的模塊,需要的朋友可以參考下
    2023-08-08
  • 解決Mac安裝thrift因bison報錯的問題

    解決Mac安裝thrift因bison報錯的問題

    今天小編就為大家分享一篇解決Mac安裝thrift因bison報錯的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-05-05
  • Node.js 使用request模塊下載文件的實例

    Node.js 使用request模塊下載文件的實例

    今天小編就為大家分享一篇Node.js 使用request模塊下載文件的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-09-09
  • Nodejs使用Mongodb存儲與提供后端CRD服務詳解

    Nodejs使用Mongodb存儲與提供后端CRD服務詳解

    這篇文章主要給大家介紹了關于Nodejs使用Mongodb存儲與提供后端CRD服務的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2018-09-09
  • Node.js學習教程之HTTP/2服務器推送【譯】

    Node.js學習教程之HTTP/2服務器推送【譯】

    這篇文章主要給大家介紹了關于Node.js學習教程之HTTP/2服務器推送的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧。
    2017-10-10
  • 2019最新21個MySQL高頻面試題介紹

    2019最新21個MySQL高頻面試題介紹

    又到了一年的面試季,今年情況特殊,很多人可能都窩在家里,也有一些人準備找工作,但是疫情嚴重,也沒企業(yè)發(fā)招聘信息。這個時候,最好的做法就是在家里刷面試題
    2020-02-02
  • nodejs模塊nodemailer基本使用-郵件發(fā)送示例(支持附件)

    nodejs模塊nodemailer基本使用-郵件發(fā)送示例(支持附件)

    本篇文章主要介紹了nodejs模塊nodemailer基本使用-郵件發(fā)送示例(支持附件),具有一定的參考價值,感興趣的小伙伴們可以參考一下。
    2017-03-03

最新評論