node_egg项目大致运行流程
Posted junlan
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了node_egg项目大致运行流程相关的知识,希望对你有一定的参考价值。
egg项目大致的运行流程
1.public静态资源托管,内置插件egg-static
2.Router 层
Router 主要用来描述请求url和具体承担执行动作的controller的关系
框架约定了app/router.js文件用于统一所有路由规则
3.Controller 层
通过Roter将用户的请求基于method和url分发到对应的Controller上
// Controller负责解析用户的输入,处理后返回相应的结果
1. 在Restful接口中,Controller接收用户的参数,从数据库查找内容返回给用户或者更新数据库
2. 在html页面中,Controller根据用户访问不同的URL,渲染不同的模板得到HTML返回给用户
3. 在代理服务器中,Controller将用户的请求转发到其他服务器上,并将其他服务器处理结果返回给用户
// Controller主要对用户的请求参数进行处理(校验,转换),然后调用对应的service方法处理业务,得到业务结果后封装并返回
1. 获取用户通过HTTP传递过来的参数
2. 校验,组装参数
3. 调用Service进行业务处理,必要时处理转换Service返回的结果,适应用户的需求
4. 通过HTTP将结果响应给客户
4.Service层
// Service就是在复杂业务场景下用域做业务逻辑封装的一个抽象层,有如下好处
1. 保持Controller中的逻辑更加简洁
2. 保持业务逻辑的独立性,抽象出来的Service可以被多个Controller重复调用
3. 将逻辑和展现分离,更容易编写测试用例
// 使用场景
复杂的数据处理,比如要展现的信息需要从数据库获取,经过一定的规则计算,参能返回用户显示,或者更新到数据库
第三方服务的调用
以上是关于node_egg项目大致运行流程的主要内容,如果未能解决你的问题,请参考以下文章
VSCode自定义代码片段15——git命令操作一个完整流程