Express是一个第三方模块,用于快速搭建服务器(替代http模块)
1.引用express 模块
const express = require("express");
2.创建 express 服务器
let app = express();
3.开启服务器
app.listen(3333) //端口号 尽量监听1000以上,持续运行结束方式两次ctrl+c
4.监听路由请求并进行处理
什么是路由?
路由就是主域后面 或者说斜杠后面跟着的就是路由
如下面的域名中 斜杠后面的就称为路由
路由
app.get("/fw",(req,res)=>{
//req 请求相关的信息
console.log(req);
//res 响应的相关信息
res.send("是是是")
})
当我们运行上面本地端口localhost;3333/fw 这个路由时,会给前端页面返回一个是是是
如下图
express的一些api
1.sendFile()
返回文件(须是绝对路径)
res.sendFile(path.join(__dirname ,"./html/index.html"))
sendFile
那么简单的返回一个文件是可以使用sendFile的,但如果返回的文件里还引用这很多外部文件,如css,js,图片等资源,那么我们需要一个个去返回吗?
下面介绍静态资源库
2.app.use(express.static("路径"))
路径这个文件夹中所有的文件都可以当成路径去访问
默认去找index.html文件
const express = require("express");
let app = express();
app.listen(3002)
app.use(express.static("./public"))
3.中间件
什么是中间件
就是在路由处理之前,先进行中间件的处理
const express = require("express")
let app = express();
app.listen(3333,()=>{
console.log("localhost:3333");
})
//中间件 ---在路由处理之前,先进行中间件的处理
app.use((req,res,next)=>{
req.a = "侯旭"
//必须执行next才能继续往下执行
next()
})
app.get("/",(req,res)=>{
res.send(req.a)
})
中间件
nodemon
可以热更新
// 数据处理中间件
app.use(express.json())
app.use(express.urlencoded({extended:true}))
get请求得到前端给我们发过来的数据
req.query
post请求得到前端给我们发过来的数据
req.body
网友评论