1. 什么是 Express
官方給出的概念:Express 是基于 Node.js 平臺(tái)漓藕,快速茸习、開放、極簡的 Web 開發(fā)框架犯犁。
通俗的理解:Express 的作用和 Node.js 內(nèi)置的 http 模塊類似属愤,是專門用來創(chuàng)建 Web 服務(wù)器的。
Express 的本質(zhì):就是一個(gè) npm 上的第三方包酸役,提供了快速創(chuàng)建 Web 服務(wù)器的便捷方法住诸。
2 Express 的基本使用
- 安裝
在項(xiàng)目所處的目錄中驾胆,運(yùn)行如下的終端命令,即可將 express 安裝到項(xiàng)目中使用:
npm i express@4.17.1
- 創(chuàng)建基本的 Web 服務(wù)器
const express = require('express')
const app = express()
// 掛載路由
// 參數(shù)1:客戶端對(duì)應(yīng)的url地址
// 參數(shù)2:對(duì)應(yīng)的請(qǐng)求處理(req:請(qǐng)求對(duì)象贱呐;res:響應(yīng)對(duì)象)
// req.query(); //獲取發(fā)過來的數(shù)據(jù)
// 通過 res.send() 方法丧诺,可以把處理好的內(nèi)容,發(fā)送給客戶端:把內(nèi)容響應(yīng)給客戶端
app.get('/', (req, res) => {
res.send('hello world.')
})
app.post('/', (req, res) => {
res.send('Post Request.')
})
app.listen(8081, () => {
console.log('http://127.0.0.1')
})
3 托管靜態(tài)資源
- express.static()
express 提供了一個(gè)非常好用的函數(shù)奄薇,叫做 express.static()驳阎,通過它,我們可以非常方便地創(chuàng)建一個(gè)靜態(tài)資源服務(wù)器馁蒂,
例如呵晚,通過如下代碼就可以將 public 目錄下的圖片、CSS 文件沫屡、JavaScript 文件對(duì)外開放訪問了:
app.use(express.static('public'))
現(xiàn)在劣纲,你就可以訪問 public 目錄中的所有文件了:
http://localhost:3000/images/bg.jpg
http://localhost:3000/css/style.css
http://localhost:3000/js/login.js
注意:Express 在指定的靜態(tài)目錄中查找文件,并對(duì)外提供資源的訪問路徑谁鳍。
因此癞季,存放靜態(tài)文件的目錄名不會(huì)出現(xiàn)在 URL 中。
- 掛載路徑前綴
如果希望在托管的靜態(tài)資源訪問路徑之前倘潜,掛載路徑前綴绷柒,則可以使用如下的方式:
app.use('/public',express.static('public'))
現(xiàn)在,你就可以通過帶有 /public 前綴地址來訪問 public 目錄中的文件了:
http://localhost:3000/public/images/kitten.jpg
http://localhost:3000/public/css/style.css
http://localhost:3000/public/js/app.js
3 nodemon
這個(gè)工具涮因,它能夠監(jiān)聽項(xiàng)目文件
的變動(dòng)废睦,當(dāng)代碼被修改后,nodemon 會(huì)自動(dòng)幫我們重啟項(xiàng)目养泡,極大方便了開發(fā)和調(diào)試
npm install -g nodemon
//原來每次重啟
node ./5.js
//現(xiàn)在 改了保存就自動(dòng)重啟
nodemon ./5.js