最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

node中http模塊的使用及執(zhí)行流程

 更新時(shí)間:2021年09月13日 10:28:44   作者:老張?jiān)诰€敲代碼  
http這個(gè)模塊的職責(zé)就是幫你創(chuàng)建編寫服務(wù)器,接下來通過本文給大家介紹node中http模塊的使用及執(zhí)行流程,感興趣的朋友一起看看吧

在node中http有什么作用

http這個(gè)模塊的職責(zé)就是幫你創(chuàng)建編寫服務(wù)器

執(zhí)行流程

 1. 加載http模塊

const http = require('http')

2. 使用http.createServer方法創(chuàng)建一個(gè)web服務(wù)器 返回一個(gè)server實(shí)例

const server = http.createServer()

3.提供對(duì)數(shù)據(jù)的服務(wù)

發(fā)請求
接受請求
處理請求
返回(發(fā)送響應(yīng))
注冊request請求事件,當(dāng)客戶端請求過來就會(huì)自動(dòng)觸發(fā)request請求事件然后就會(huì)執(zhí)行第二個(gè)參數(shù)執(zhí)行回調(diào)函數(shù)

server.on('request',function(){
    console.log('收到客戶端的請求了')
})

4.綁定端口號(hào),啟動(dòng)服務(wù)器

server.listen(3000,()=> {
    console.log("服務(wù)器啟動(dòng)成功了,可以通過http://127.0.0.1:3000/來訪問了")
})

5. node app.js啟動(dòng)成功

打開瀏覽器復(fù)制粘貼http://127.0.0.1:3000/就會(huì)發(fā)現(xiàn)瀏覽器一直在轉(zhuǎn)圈(此時(shí)已經(jīng)與瀏覽器建立了鏈接),同時(shí)終端返回收到客戶端的請求了,關(guān)閉終端ctrl+c則會(huì)終止瀏覽器服務(wù)((瀏覽器就不轉(zhuǎn)圈了,終止連接了))

搭建一個(gè)基本的web服務(wù)器請求

代碼如下:

const http = require('http')

const server = http.createServer()
// request請求事件處理函數(shù)需要接收倆個(gè)參數(shù)
// request請求對(duì)象
// 請求對(duì)象可以獲取客戶端的一些請求信息,例如請求路徑
// response響應(yīng)對(duì)象
// 響應(yīng)對(duì)象可以用來給客戶端發(fā)送響應(yīng)消息
server.on('request',function(request,response){
    console.log('收到客戶端的請求了','請求路徑是:'+request.url)
    // response對(duì)象有一個(gè)方法,write可以用來給客戶端發(fā)送響應(yīng)數(shù)據(jù)
    // write可以使用多次,但是最后一次一定要用end來結(jié)束響應(yīng),否則客戶端會(huì)一直等待
    response.write("hello ")
    response.write("nodejs")
    response.end()
    //告訴客戶端我的話說完了你可以給用戶看了
    //由于現(xiàn)在我們的服務(wù)器能力很弱,無論是什么請求都只能響應(yīng)hello nodejs
    // 怎么做到請求不同的路徑響應(yīng)不同的結(jié)果
})
server.listen(3000,()=> {
    console.log("服務(wù)器啟動(dòng)成功了,可以通過http://127.0.0.1:3000/")
})

接下來就是編寫一個(gè)基本的接口數(shù)據(jù)用來請求

判斷在不同的頁面顯示不同的數(shù)據(jù)
首頁數(shù)據(jù)

在這里插入圖片描述

a頁面數(shù)據(jù)
…與首頁不同的數(shù)據(jù)

const http = require("http")
const server = http.createServer()
server.on('request',function(req,res){
    res.writeHead(200,{'Content-Type':'text/plain;charset=utf-8'})
    console.log("收到請求了,請求路徑是:"+req.url)
    // res.write("heel")
    // res.write("world")
    // res.end()
    // 上面的方式比較麻煩
    //可以使用end的時(shí)候發(fā)送響應(yīng)
    // 根據(jù)不同的請求路徑發(fā)送不同的請求結(jié)果
    //1. 獲取請求的路徑
    // req.url獲取到的是端口號(hào)之后的路徑
    // 也就是說所有的url都是以/開頭的
    //2. 判斷路徑處理響應(yīng)
    const url = req.url
    if(url=="/"){
        const project = [
           {
            name:"蘋果",
            price:"18",
           },
           {
            name:"香蕉",
            price:"28",
           },
           {
            name:"西瓜",
            price:"20",
           },
           {
            name:"xxx",
            price:"100",
           },
           {
            name:"aaa",
            price:"100",
           }
        ]
        // 響應(yīng)數(shù)據(jù)只能是二進(jìn)制數(shù)據(jù)或者是字符串
        // 響應(yīng)數(shù)據(jù)如果是以下的則不行:數(shù)字對(duì)象數(shù)組布爾值
        
        res.end(JSON.stringify(project))
    }else if(url=='/a'){
        const a = [
            {
             name:"蘋果",
             price:"aa",
            },
            {
             name:"香蕉",
             price:"ww",
            },
            {
             name:"西瓜",
             price:"vv",
            },
            {
             name:"wjcx",
             price:"bb",
            },
            {
             name:"wdwa",
             price:"ww",
            }
         ]
         res.end(JSON.stringify(a))
    }
})
server.listen(3000,function(){
    console.log("服務(wù)器啟動(dòng)成功,可以訪問啦!http://127.0.0.1:3000/")
})

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

相關(guān)文章

最新評(píng)論

永安市| 化隆| 准格尔旗| 乡宁县| 高邮市| 东安县| 黔江区| 娄底市| 酒泉市| 遂溪县| 赣州市| 蒙城县| 万荣县| 砚山县| 朝阳市| 顺平县| 思茅市| 闸北区| 得荣县| 大余县| 八宿县| 阳泉市| 湛江市| 元朗区| 成武县| 留坝县| 南开区| 安福县| 南丹县| 天水市| 桦川县| 福州市| 沙田区| 绥棱县| 苍南县| 蒙阴县| 天等县| 贵州省| 赫章县| 华容县| 东安县|