Node Express 之路由规划

express 路由规划

  • 概述(个人经验):
    我们在设计网站的时候,主要分为两大块:前台、后台;两大块是由很多小模块组成,如淘宝网站前台,它是由用户模块、商品模块、购物车模块等等,如果我们采用express框架去实现各种url,我们在他的程序入口app.js中去实现url,这个文件是非常臃肿的。这个时候我们需要拆分路由。不同的模块干不同的事情。

  • 步骤

    1、在router目录下新建路由入口文件mainRouter.js和 admin、home文件夹(admin文件夹下面放的都是关于后台路由的模块,home目录下面放的都是前台路由的模块)
    在这里插入图片描述

var express = require('express');
var router = express.Router();
var app = express();

var adminRouter = require('./admin/index') //后端
var homeRouter = require('./home/index') //前端

//设置跨域
app.all('*', (req, res, next) => {
    res.header("Access-Control-Allow-Origin", "*");
    res.header("Access-Control-Allow-Headers:content-type");
    res.header("Access-Control-Allow-Headers", "X-Requested-With");
    res.header("Access-Control-Allow-Methods","PUT,POST,GET,DELETE,OPTIONS");
    res.header("X-Powered-By",' 3.2.1')
    res.header('Access-Control-Allow-Credentials: true');

    res.header("Content-Type", "application/x-www-form-urlencoded;charset=utf-8");
    next();
});


router.use('/', adminRouter)
router.use('/', homeRouter)

module.exports = router;

2、在admin和home文件夹下新建所需的模块(manage.js、user.js等)

// user.js
var express = require('express');
var router = express.Router();

router.get('/api/admin/user', function (req, res) {
    res.send('用户模块')
})

module.exports = router;

3、将前台、或后台所需的模块都引入到index.js中

var express = require('express');
var router = express.Router();
var user = require('./user') 
var manage = require('./manage') 

// 挂载模块
router.use('/', user)
router.use('/', manage)

module.exports = router;

4、在app.js中引入admin模块

// 引入模块
var mainRouter= require('./router/mainRouter')

// 使用
app.use('/', mainRouter)

5、如果需要动态路由

app.get('/user/:id', function (req, res) {
  console.log(req.params)
})

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值