【nodejs】让nodejs像后端mvc框架(asp.net mvc)一样处理请求--目录(8/8 完结)

为什么要做这个

在使用nodejs开发过程中,总是发现需要做很多重复性的体力劳动,且因为自身是服务端程序员出身,感觉有一些服务端好的东西其实可以在nodejs上得到应用并能提高一些开发工作效率。 本系列文章将介绍对express框架的一些扩展,来达到部分后台框架一样的特性功能。如自动路由,路由映射,参数映射等等功能; 代码基本上都是用typescript写的,因为他有比较好的语法检查,以及最重要的智能提示!!!实在是烦透了方法名、类名要么自己手动敲,要么各种copy。累到嗝屁!

目录

  • 【nodejs】 让nodejs像后端mvc框架(asp.net mvc)一样处理请求--开篇
  • 【nodejs】 让nodejs像后端mvc框架(asp.net mvc)一样处理请求--自动路由篇【route】
  • 【nodejs】 让nodejs像后端mvc框架(asp.net mvc)一样处理请求--路由限制及选择篇【route】
  • 【nodejs】 让nodejs像后端mvc框架(asp.net mvc)一样处理请求--控制器的声明定义和发现篇(【controller+action】
  • 【nodejs】 让nodejs像后端mvc框架(asp.net mvc)一样处理请求--控制器和处理函数的注册篇【controller+action】
  • 【nodejs】 让nodejs像后端mvc框架(asp.net mvc)一样处理请求--请求处理函数的特性注册篇【controller+action+attribute】
  • 【nodejs】 让nodejs像后端mvc框架(asp.net mvc)一样处理请求--参数自动映射篇
  • 【nodejs】 让nodejs像后端mvc框架(asp.net mvc)一样处理请求--处理结果适配篇【requesthandler】
  • 【nodejs】 让nodejs像后端mvc框架(asp.net mvc)一样处理请求--orm篇【像EF一样:如丝般滑】
  • 【nodejs】 让nodejs像后端mvc框架(asp.net mvc)一样处理请求--总结(代码整理一下在来...)

基本业务流程图

已完成的功能

  1. 可以根据默认url路由规则自动调用请求处理函数
  2. 请求参数可以使用声明实体类+装饰器的方式完成参数的自动绑定
  3. 处理结果可以根据需求自动适配(nodejs服务端渲染、ajax调用返回json、jsoncallback调用)

PS:

  1. 因为看到博问 关于nodejs作为后端功能性的疑问后,觉得我的这几百行代码还是可以分享一下的。所有有了本系列。
  2. 成文比较仓促,贴出的代码也是不太完整的,文章的逻辑也比较凌乱...。当然,最重要的原因还是懒!!!,代码整理后同步到github上就一目了然啦。
  3. 我相信只要有一点底子的还是基本能看到。后续代码完善一下,比如改改名称,大小写,谢谢注释,优化优化结构后放到github上。如果能帮到你,也甚是荣幸。刚好也借这次机会,把代码review一次,规范一下。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏北京马哥教育

让你的Git水平更上一层楼的10个小贴士

最近,我们发表了关于Git基础知识和在团队中使用Git的教程。我们之前讨论的那些命令,已经足够让帮助一个开发者在Git世界里生存了。本篇文章,我们将尝试探索如何...

32250
来自专栏Flutter&Dart

Flutter升级到预览版

不管你怎么更新,就是更新不了,网速好又怎样?电脑配置高又怎样?这个bug还不是搞得你怎样都更新不了!

13510
来自专栏云计算教程系列

如何使用ntopng监控您的网络

ntop 是最好的网络监控工具之一。ntop是一个网络探测器,它以与top显示进程般类似的方式显示网络使用率。在交互模式中,它显示了用户终端上的网络状态。在网页...

70140
来自专栏枕边书

linux的“自动化”

linux的“自动化” linux系统的web网站在运营状态时,我们常需要对网站进行维护,例如查看资源剩余并做出响应、日志分割、数据整理,在特定状态执行特定任务...

25790
来自专栏数据和云

墨菲定律:一个参数Drop_caches导致集群数据库实例崩溃

李真旭@killdb Oracle ACE,云和恩墨技术专家 个人博客:www.killdb.com 在墨菲定律里,我们知道,有可能发生的故障就一定会发生,哪怕...

33370
来自专栏北京马哥教育

如何在 Git 里撤销(几乎)任何操作

git技能 任何版本控制系统的一个最有的用特性就是“撤销 (undo)”你的错误操作的能力。在 Git 里,“撤销” 蕴含了不少略有差别的功能。 当你进行一次...

29260
来自专栏FreeBuf

[安全科普]你必须了解的session的本质

有一点我们必须承认,大多数web应用程序都离不开session的使用。这篇文章将会结合php以及http协议来分析如何建立一个安全的会话管理机制。 我们先简单的...

23670
来自专栏编程微刊

用node.js从零开始去写一个简单的爬虫

如果你不会Python语言,正好又是一个node.js小白,看完这篇文章之后,一定会觉得受益匪浅,感受到自己又新get到了一门技能,如何用node.js从零开始...

13810
来自专栏大前端开发

从编程小白到全栈开发:从最容易的开始

学习编程,重要的一点就是要进行思考,而更重要的一点是进行动手实践。简单的代码逻辑,我们可能想想就能在脑子里建立出这个代码的样子来,但是别以为你能永远这样人肉运行...

10930
来自专栏小狼的世界

Git的深入理解与GitHub托管服务的使用

许多人习惯用复制整个项目目录的方式来保存不同的版本,或许还会改名加上备份时间进行区别。这么做的唯一好处就是简单,坏处也不少:有时候会混淆所在的工作目录,一旦弄错...

15230

扫码关注云+社区

领取腾讯云代金券