zoukankan      html  css  js  c++  java
  • nodejs -Router

    Node 用 request 事件来处理请求响应,事件内使用分支语句处理不同路径的请求,而 Express 封装了这些操作,使得代码简洁优雅

    但如果请求路径变多,都写在 app.js 文件里的话,就会让这个入口文件变得臃肿且难维护

    加上 Node 是模块化编程,所以应该将这些 app.get() 和 app.post() 都抽取出来作为一个路由模块 router.js

     

    方式一,router.js 作为入口文件,此方式抽离了路由,但入口文件改变了,职能划分不好

     

    方式二,将 router.js 的路由作为一个函数导出,此方式保证了 app.js 为入口文件并且抽离出了路由模块,但这还不是最好的方式

     

    方式三,Express 提供了一种更好的方式专门来包装路由

    这样,职责划分清晰了,app.js入门模块用于启动服务,做一些服务相关配置,如配置模板引擎、body-parser解析表单post请求体、提供静态资源服务、监听端口启动服务和挂载路由等工作

    router.js 路由模块只用来处理路由,根据不同的请求方法和请求路径设置具体的请求处理函数

    模块职责要单一,一个模块就做一件事,模块的划分是为了增强项目代码的可维护性,提升开发效率

  • 相关阅读:
    Apple MDM
    苹果核
    iOS自动化测试的那些干货
    Wifi 定位原理及 iOS Wifi 列表获取
    详解Shell脚本实现iOS自动化编译打包提交
    PushKit 占坑
    【译】使用 CocoaPods 模块化iOS应用
    NSMutableArray 根据key排序
    iOS 通过tag查找控件
    自己使用 2.常量变量,数据类型,数据的输入输出。
  • 原文地址:https://www.cnblogs.com/Grani/p/9581819.html
Copyright © 2011-2022 走看看