当先锋百科网

首页 1 2 3 4 5 6 7

初始化项目
npm init -y
安装特定版本的express
在项目目录中新建app.js作为整个项目的入口文件,并初始化如下代码
// 导入express
const express = require('express')
// 创建express的服务器实例
const app = express()
// 启动服务器
app.listen(3007, () => {
    console.log("服务器启动:http://127.0.0.1:3007")
})
安装cors中间件,配置cors跨域
导入并配置cors跨域
//配置cors跨域中间件
const cors = require("cors")
//将cors注册为全局中间件
app.use(cors())
配置解析表单数据的中间件
初始化路由相关的文件夹
新建router文件夹
  • 项目根目录中,用来存放所有的路由模块
  • 路由模块中,只存放客户端的请求和处理函数之间的映射关系
  • 例如:router文件夹下新建user.js,代表用户模块
//存放每个路由的对应关系,
// 导入express
const express = require('express')
// 创建路由对象
const router = express.Router()
// 注册新用户
router.post('/reguser', (req, res) => {
    res.send('reguser ok')
})
// 登录
router.post('/login', (req, res) => {
    res.send('login ok')
})
// 将路由对象共享出去
module.exports = router
  • 但为了保证路由模块中只存放关系,需要抽离用户路由模块的中的处理函数,保证纯粹性
新建router_handler文件夹
  • 抽离用户路由模块的中的处理函数
  • 项目根目录中,用来存放所有的路由处理函数
  • 专门负责存放每个路由对应的处理函数
  • 例如,router_handler文件夹下新建user.js进行抽离处理函数
// 在这里定义和用户相关的路由处理函数,供 router/user.js使用
// 注册新用户
exports.reguser=(req,res)=>{
     res.send('reguser ok')
}
// 登录
exports.login=(req,res)=>{
    res.send('login ok')
}
有了router_handler文件夹后,router文件下对应关系更加纯粹
//存放每个路由的对应关系
// 导入express
const express = require('express')

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

// 导入用户处理函数模块
const userhandler=require('../router_handler/user')

// 注册新用户
router.post('/reguser',userhandler.reguser)

// 登录
router.post('/login', userhandler.login)

// 将路由对象共享出去
module.exports = router
app.js文件中导入并使用以及注册路由模块
// 导入并使用用户路由模块
const userRouter =require("./router/user")
// 注册
app.use('/api',userRouter)
运行跑一下,试试

在这里插入图片描述