express模块(二)

2022-08-26  本文已影响0人  扶光_

use()处理子路由
之前我们会在一个js文件中接受很多请求,就很乱
如above下的子路由

app.get("/above/first",(req,res)=>{
    res.send("第一个分页")
})
app.get("/above/second",(req,res)=>{
    res.send("第而个分页")
})
app.get("/above/third",(req,res)=>{
    res.send("第三个分页")
})

那么下面我们可以利用中间件的方式,将above下的子路由写在一个专门的js文件中
首先创建一个above的文件夹


创建

在above.js中写

const express = require("express");

//创建子路由
const router = express.Router()

// 后续子路由都可以写在这里
// 后续子路由都可以写在这里
router.get("/first",(req,res)=>{
    res.send("第一个分页")
})
router.get("/second",(req,res)=>{
    res.send("第而个分页")
})
router.get("/third",(req,res)=>{
    res.send("第三个分页")
})

//将路由暴露出去
module.exports = router

然后前面的主路由中就可以写

//关于路由
app.use("/above",require("./router/above"))

处理所有方式的请求 all()

请求的方式有get和post两种,那么express提供了一个all()方法可以接收get和post的请求

一,解决跨域问题

什么是跨域

浏览器从一个域名的网页去请求另一个域名的资源时,域名、端口、协议任一不同,都是跨域
跨域也是浏览器的一种安全阻止,后端访问后端是不会出现跨域这种说法的
第一种情况别人访问我的,我希望开放给别人,报错如下:

image.png

解决方法:
1.安装cors包 npm i cors -S
2.使用跨域中间件

const express = require("express")
const cors = require("cors")
let app = express();
//监听1111端口
app.listen(1111)
//跨域中间件
app.use(cors())

app.post("/test",(req,res)=>{
    res.send({
        code:0,
        msg:"请求成功"
    })
})
成功
第二种情况我希望访问别人的,但是出现跨域了,怎么解决

我朝我自己的后端发请求,用自己的后端请求别人的后端,得到数据然后返回给前端

上一篇 下一篇

猜你喜欢

热点阅读