Node.js學習三,不同url返回不同頁面

上一篇我們知道如何用url來返回不同的數(shù)據(jù),本篇我們來看一下如何返回一個頁面吧。

前置知識:對文件進行操作,讀取,寫入需要用到一個node.js模塊,fs文件操作模塊 。
fs模塊中有一個讀取文件的方法readFile(),里面?zhèn)鲀蓚€參數(shù),一個是err(錯誤),另一個是data(數(shù)據(jù))

為了方便,我以下代碼的頁面是我js練習的頁面

//引入http模板和fs模板
var http = require('http')
var fs = require('fs')

//實例化http
var app = http.createServer(function(req, res){
    //編碼解析
    res.setHeader('Content-Type', 'text/html; charset=utf-8')
   
    //定義urls為請求的url地址
    var urls = req.url
    //如果地址為/返回Tab選項卡自動切換頁面
    if( urls === '/' ){
        //讀取文件,第一個參數(shù)是路徑,第二個參數(shù)是編碼類型,第三個是回調(diào)函數(shù)
        fs.readFile("../js練習/Tab選項卡自動切換.html", 'utf-8', function(err, data){
            //!err err是錯誤時返回,!err取反表示沒有錯誤,即成功時
            if(!err){
                res.end(data)   //返回頁面數(shù)據(jù)
            }else{
                console.log("讀取文件失敗")
            }
        })
    } else if( urls === '/page1' ){
        fs.readFile("../js練習/QQ抖動效果.html", 'utf-8', function(err, data){
            if(!err){
                res.end(data)
            }else{
                console.log("讀取文件失敗")
            }
        })
    } else if( urls === '/page2' ){
        fs.readFile("../js練習/創(chuàng)建和添加元素.html", 'utf-8', function(err, data){
            if(!err){
                res.end(data)
            }else{
                console.log("讀取文件失敗")
            }
        })
    } else{
        res.end("404")  //沒找到url地址時
    }

})

app.listen(3000, function(){
    console.log("服務(wù)器啟動成功,瀏覽器地址:http://127.0.0.1:3000/")
})

效果圖


image.png

image.png

image.png
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容