<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
這個小demo是Node.js, Express, MongoDB & More: The Complete Bootcamp
系列課程的第一個demo,本篇文章主要介紹實現過程以及可能帶來的思考。
首先我們需要了解一些知識,以便完成這個demo
首先是node對檔案的操作,也就是fs模組。本文只介紹一些簡單的操作,大部分是例子中需要用到的方法。想要了解更多可以去API檔案去查詢。
首先引入fs模組:const fs = require("fs");
const textIn = fs.readFileSync("./txt/append.txt", "utf-8");
上面程式碼展示的是readFileSync的使用,兩個引數中,第一個引數是要讀取檔案的位置,第二個引數是編碼格式encoding
。如果指定encoding
返回一個字串,否則返回一個Buffer
。
fs.writeFileSync("./txt/output.txt", textOut);
writeFileSync
毫無疑問是寫檔案,第一個引數為寫檔案的地址,第二個引數是寫入的內容。
上面的兩個API都是同步的讀寫操作。但是nodeJs作為一個單執行緒的語言,在很多時候,使用同步的操作會造成不必要的擁堵。例如等待使用者輸入這類I/O操作,就會浪費很多時間。所以 js中有非同步的方式解決這類問題,nodejs也一樣。通過回撥的方式來解決。
fs.readFile("./txt/append.txt", "utf-8", (err, data) => { fs.writeFile("./txt/final.txt", `${data}`, (err) => { console.log("ok"); }); });
createServer
http.createServer(requestListener);
http.createServer() 方法建立一個HTTP Server 物件,引數requestListener
為每次伺服器收到請求時要執行的函數。
server.listen(8001, "127.0.0.1", () => { console.log("Listening to requests on port 8001"); });
上面表程式碼錶示監聽8001埠。
url.parse
這個模組可以很好的處理URL資訊。比如當我們請求http://127.0.0.1:8001/product?id=0
的時候通過url.parse
可以獲取到很多資訊。如下圖:
對於已經給出的完成頁面,我們可以看到在切換頁面時URL的變化,所以我們需要得到使用者請求時的 URL地址,並根據地址展示不同的頁面。所以我們通過path
模組得到pathname
,進行處理。
對於不同的請求,我們返回不同的介面。首先對於Overview page
介面,由於它的型別是 html介面,所以我們通過writeHead
將它的Content-type
設定為text/html
。
res.writeHead(200, { "Content-type": "text/html", });
其他的幾個返回html的頁面也是同樣的處理。由於前端介面已經給出,我們只需要讀取JSON裡面的資料,並將模板字串替換即可。最後我們通過res.end(output)
返回替換後的頁面。
通過這一個小頁面的練習,可以學習到node對檔案的操作以及HTTP模組的操作。並對後端有了初步的認識。
到此這篇關於使用node搭建一個小頁面的文章就介紹到這了,更多相關node搭建小頁面內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!
相關文章
<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
综合看Anker超能充系列的性价比很高,并且与不仅和iPhone12/苹果<em>Mac</em>Book很配,而且适合多设备充电需求的日常使用或差旅场景,不管是安卓还是Switch同样也能用得上它,希望这次分享能给准备购入充电器的小伙伴们有所
2021-06-01 09:31:42
除了L4WUDU与吴亦凡已经多次共事,成为了明面上的厂牌成员,吴亦凡还曾带领20XXCLUB全队参加2020年的一场音乐节,这也是20XXCLUB首次全员合照,王嗣尧Turbo、陈彦希Regi、<em>Mac</em> Ova Seas、林渝植等人全部出场。然而让
2021-06-01 09:31:34
目前应用IPFS的机构:1 谷歌<em>浏览器</em>支持IPFS分布式协议 2 万维网 (历史档案博物馆)数据库 3 火狐<em>浏览器</em>支持 IPFS分布式协议 4 EOS 等数字货币数据存储 5 美国国会图书馆,历史资料永久保存在 IPFS 6 加
2021-06-01 09:31:24
开拓者的车机是兼容苹果和<em>安卓</em>,虽然我不怎么用,但确实兼顾了我家人的很多需求:副驾的门板还配有解锁开关,有的时候老婆开车,下车的时候偶尔会忘记解锁,我在副驾驶可以自己开门:第二排设计很好,不仅配置了一个很大的
2021-06-01 09:30:48
不仅是<em>安卓</em>手机,苹果手机的降价力度也是前所未有了,iPhone12也“跳水价”了,发布价是6799元,如今已经跌至5308元,降价幅度超过1400元,最新定价确认了。iPhone12是苹果首款5G手机,同时也是全球首款5nm芯片的智能机,它
2021-06-01 09:30:45