路由及中间件MVC

路由及中间件,MVC

url

通常url由hostportpath来组成,比如[“http://xxx.com/users/profile”],所谓路由就是决定如何处理/users/profile这个路径,一个路由对应着一个界面,这样只要输入不同的路由,就会展示不同的界面,而不需要刷新界面,类似于选项卡的功能。

中间件

中间件:在收到请求后和发送响应之前这个阶段执行的一些函数,用来完成一些数据的处理。
可以使用express对象的use方法。插入一个中间件,如下:

app.use([path,] function [, function...])

分类:分为如下几种

1、应用级中间件:处理静态资源目录
2、路由中间件:暴露一个路由接口
3、错误处理中间件:处理错误

Router对象:当express实例的路由越来越多的时候,最好把路由分类独立出去,express的实例(app) 能更好的处理其他逻辑流程。Express的Router对象是一个简化的 app实例,只具有路由相关的功能,包括use, http verbs等等。最后这个Router再通过app的use挂载到app的相关路径下。

MVC

node.js express中的MVC模式
Model
数据结构层,由控制层操作,进行相关数据处理。
view
express生成项目时会产生views,里面存放一些模板文件,比如ejs文件。
Controller
即视图向控制器发出请求,由控制器选择相应的模型来处理模型返回的结果给控制器,由控制器来选择合适的视图,生成界面给用户。

运行顺序

在web服务启动时,就已经加载了app.js ,需要在appjs里面定义一下路由,

var docRoute = require('./app/routes/position.js');
app.use('/doc', PositionRoute);

1、用户发起请求,http://www.xxxxx.club/doc/getList
2、app已经设置了doc的路由
3、然后node server,解析PositionRoute,juti定位到./app/routes/position.js里。
4、根据详细路由,然后指定控制器里面到具体操作。
5、进入控制器(controller),执行具体操作。
6、若操作涉及model层,则调用model层相关数据结构。
6、然后由控制器将数据返回给用户。

在这里插入图片描述 以上为三者关系图

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值