一、express的使用
安装express 在根目录下输入 npm install express
引入express的包
const express = require("express");
定义一个app来接收express的返回值
let app = express();
get方法
代码结构:
"use strict";
const express = require("express");
let app = express();
app.get("/", (req, res)=> {
res.send("<h1>这是标题</h1>");
})
app.listen(8888, ()=> {
console.log("正在监听8888");
})
参数一:url后的路径, url后面有/的都可以执行 127.0.0.1:8888/
参数二:回调函数 res.send()可以直接将内容发送到浏览器,发送完毕断开连接,send包含了write和end两个操作,使用起来更加方便。
参数一为"/*":表示匹配到的所有的url路径,都会执行里面的代码,这样,我们就需要在回调函数中增加一个参数 next,next跳转到下一个路由,如果没有next,则浏览器会一直处于等待的状态,有了next,执行完这里的get以后,会继续执行后面的get。因为这一执行顺序,我们可以在这里设置res的属性,那么执行后面get的时候,也可以使用res的这个属性。
app.get("/*", (req, res, next)=> {
req.aa = "abc";
//为req增加属性,可以在下面被访问
next(); //跳转到下一个路由
}) app.get("/", (req, res)=> {
res.send("<h1>这是标题</h1>" + req.aa);
})
我们还可以通过status来设置状态码
app.get("/*", (req, res)=> {
//让状态码变成404
res.status(404).send("通配符");
})
例如参数一为“/login” ,那么要想访问到页面就需要在路径中加入“/login”, 127.0.0.1:8888/login
获取url中的参数:
- req.query
使用query来获取参数,要求url中参数的写法必须为127.0.0.1:8888?name="zs"&id=1,我们可以用res.query.id来获取到id属性值
app.get("/", (req, res)=> {
console.log(req.query);
console.log(req.query.id);
console.log(req.query.name);
res.send("访问博客");
})
- req.params
使用query来获取参数,要求url中参数的写法必须为127.0.0.1:8888/zs/1
app.get("/:uesr/:id", (req, res)=> {
console.log(req.params);
res.send("啦啦");
})
post方法
post方法和get方法用法差不多,这里只做简单演示
app.post("/login", (req, res)=> {
req.send("这是登录");
})
all方法
all将post和get合二为一,具体用法:
"use strict"; const express = require("express");
let app = express();
app.all("/login", (req, res)=> {
if(req.method.toLocaleLowerCase() === "get") {
res.send("这是get请求");
}else if(req.method.toLocaleLowerCase() === "post"){
res.send("这是post请求");
}
}) app.listen(8888, ()=> {
console.log("正在监听8888");
})
req.method用来获取请求的方式,可能为GET、POST、PUT、HEAD等,可以把它转换为小写与get、post比较