Node.js 系统含有多种不同的结构,如 MVC、全栈、REST API 和生成器等。这些结构不仅提升了 Web 应用的开发效率,也优化了开发过程。在这里,我们收集整理了十个高效的 Node.js 框架,希望对你有帮助。

1、Node.js 开发框架 Sail.js

Sails.js 就像是 Node.js 平台上的 Rails 框架。这是一个可靠可伸缩的开发框架,面向服务的架构,提供数据驱动的 API 集合。用来开发多玩家游戏、聊天应用和实时面板引用非常方便,也可用于开发企业级 Node.js 应用。

Sails.js 基于 Node.js, Connect, Express 和 Socket.io 构建。

控制器示例代码:

module.exports = {hi: function (req, res) {return res.send("Hi there!");},bye: function (req, res) {return res.redirect("http://www.OSChina.net");}
};

2、Node.js 服务器端框架 Hapi.js

Hapi.js 是一个用来构建基于 Node.js 的应用和服务的富框架,使得开发者把重点放在便携可重用的应用逻辑而不是构建架构。内建输入验证、缓存、认证和其他 Web 应用开发常用的功能。

示例代码:

var Hapi = require('hapi');// Create a server with a host and port
var server = new Hapi.Server('localhost', 8000);// Add the route
server.route({method: 'GET',path: '/hello',handler: function (request, reply) {reply('hello world');}
});// Start the server
server.start();

3、Node.js 高性能封装 Express.js

Express 是一个简洁而灵活的 Node.js Web应用框架, 提供一系列强大特性帮助你创建各种 Web 应用。Express 不对 Node.js 已有的特性进行二次抽象,我们只是在它之上扩展了 Web 应用所需的功能。丰富的 HTTP 工具以及来自 Connect 框架的中间件随取随用,创建强健、友好的 API 变得快速又简单。

示例代码:

var express = require('express')
var app = express()app.get('/', function (req, res) {res.send('Hello World')
})app.listen(3000)

4、Node.js 的 Web 框架 Kraken.js

Kraken 基于 express 构建,实现对环境变量的感知、动态配置、高级中间件和应用生命周期的事件通知。

基本使用方法:

'use strict';var express = require('express'),kraken = require('kraken-js');var app = express();
app.use(kraken());
app.listen(8000);

5、Web 应用构建平台 Meteor

Meteor 是一组新的技术用于构建高质量的 Web 应用,提供很多现成的包,可直接在浏览器或者云平台中运行。

6、全栈 Javascript 开发架构 Mean.js

一种全栈 Javascript 开发架构,它的名称来自于:MongoDB,Express,Angular,Node。

使用方法:

$ sudo npm install -g mean-cli
$ mean init yourNewApp

7、Node.js 的 Web 框架 Koa.js

Koa 是下一代的 Node.js 的 Web 框架。由 Express 团队设计。旨在提供一个更小型、更富有表现力、更可靠的 Web 应用和 API 的开发基础。

Koa可以通过生成器摆脱回调,极大地改进错误处理。Koa核心不绑定任何中间件,但提供了优雅的一组可以快速和愉悦地编写服务器应用的方法。

示例代码:

var koa = require('koa');
var app = koa();// loggerapp.use(function *(next){var start = new Date;yield next;var ms = new Date - start;console.log('%s %s - %s', this.method, this.url, ms);
});// responseapp.use(function *(){this.body = 'Hello World';
});app.listen(3000);

8、Node.js CMS 和 Web 应用程序平台 KeystoneJS

KeystoneJS,以 Express 和 MongoDB 为基础搭建的 Node.js CMS 和 Web 应用程序平台。

具有以下特性:

  • Express.js 和 MongoDB:Keystone 会为你配置 express(node.js 上的 Web 服务器),用 Mongoose(领先的 ODM 包)连接你的 MongoDB 数据库

  • 动态路由:Keystone 从设置 MV* 程序的最佳实践入手,让你管理模板、视图和路由变得更容易

  • 数据库域:ID、String、Boolean、Date 和 Number 是数据库的构件。Keystone 以它们为基础实现了在现实工作中更实用的域类型,比如 name、email、password、address、image 和 relationship (及其它)

  • 自动生成管理员界面:不管你在搭建应用程序,或者在生产环境中作为数据库内容管理系统时是否用它,Keystone 的管理员界面都能节省你的时间,让你管理数据更容易

  • 编码更简单:有时即便做的事情简单,异步代码也会变得复杂。Keystone让简单的事情(比如在视图中显示之前加载数据)保持简单

  • 表单处理:要验证表单、上次图片或用一行代码更新数据库?基于你已经定义的数据模型,Keystone 可以做到

  • 会话管理:Keystone 自带了会话管理和认证功能,包括密码域的自动加密

  • 发送 Email:借助 Keystone,你的应用程序可以轻松地设置、预览和发送基于模板的 email。它还集成了 Mandrill (Mailchimp 卓越的事务性 email 发送服务)

9、Node.js 框架组件 flatiron.js

flatiron 是一款 Node.js 和浏览器的框架组件,是一款构建现代化 web 应用适应性很强的框架。flatiron 提供比 Rails 类组件有更丰富配置的框架组件,允许开发者自己添加他们想要的功能组件。

10、基于 Node.js 的 API 框架 LoopBack

LoopBack 是基于 Node.js 的一个开源的 API 框架,可以让 Node.js 应用方便的跟各种设备通过 API 进行互联。

编译自:Top 10 Node.js frameworks for end-to-end Web testing

译者:开源中国 - 达尔文

原文链接:https://my.oschina.net/editorial-story/blog/956498

十大 Node.js 的 Web 框架,快速提升工作效率相关推荐

  1. 关于node.js的web框架的应用及并发性能测试

    "Node.js 是服务器端的 JavaScript 运行环境,它具有无阻塞(non-blocking)和事件驱动(event-driven)等的特色,Node.js 采用 V8 引擎,同样 ...

  2. 分享几款UI设计师快速提升工作效率的辅助设计软件

    收集「灵感」和「设计素材」几乎是UI设计师日常必不可少的工作.偶尔还会收藏大神的经验文章,而这些东西都收藏在各大网站上,当过一段时间后,你就会发现收集资料都不知道放哪里或是收藏在哪个网站上,所以我们需 ...

  3. Node.js轻量级Web框架Express4.x使用指南

    tip:有问题或者需要大厂内推的+我脉脉哦:丛培森 ٩( 'ω' )و [本文源址:http://blog.csdn.net/q1056843325/article/details/71079663 ...

  4. 带你理清Node.js 的Web框架的3个层次

    web 框架指的是处理 http.https 的服务端框架,Node.js 提供了 http.https 模块用于处理协议数据,这是 web 框架的基础. 但是 http.https 的 api 过于 ...

  5. 常见的基于node.js的web框架

    2019独角兽企业重金招聘Python工程师标准>>> 私人定制,十款最佳Node.js MVC框架 转载于:https://my.oschina.net/letiantian/bl ...

  6. web开发快速提高工作效率的一些资源

    文:祈澈姑娘 前端学习资源实在是又多又广,在这样的一个知识的海洋里,我们像一块海绵一样吸收,想要快速提高效率,平时的总结不可缺少,以下总结了一些,排版自我感觉良好,推送出来,后续持续跟新中...... ...

  7. HR如何快速提升工作效率?

    从招聘到用人管理各个环节,人力资源部门都是公司最重要的职能部门之一,hr的日常工作涉及众多复杂繁琐的内容,比如人员招聘,考核培训等都离不开大量的数据整理和录入操作,但那些和"人"相 ...

  8. Word不熟练?掌握这些Word技巧和30个快捷键,快速提升工作效率

    日常办公里面Word软件是必不可少的,如果你无法熟练的掌握Word,必将会使你的工作效率大大降低!那么如何才能快速的帮助我们提升Word熟练度呢? 下面为大家分享这几个Word技巧和30个Word常用 ...

  9. 用Node.js 写web框架(番外)

    为什么80%的码农都做不了架构师?>>>    我猜好多人都以为我偷懒去了,这周很忙,公正各种文件,准备出国. 不过呢,同时我也考察了若干工具,为开源做准备. Grunt介绍 QUn ...

最新文章

  1. 计算1至1000间的合数c语言,输出1000以内的素数的算法(实例代码)
  2. 云服务器 cvm操作系统选择,云服务器cvm操作系统选择
  3. 第一章 TestNG框架自动化简述
  4. Sentinel介绍和Windows下安装Sentinel-dashboard
  5. r软件说明lib文件未指明_软件说明文件
  6. C#算法设计查找篇之01-顺序查找
  7. MySQL命名、设计及使用规范《MySQL命名、设计及使用规范》
  8. 冲刺周期一--站立会议05
  9. Spring如何加载xml文件
  10. linux数据包大小控制,linux udp 数据包大小问题
  11. 医院HIS预约系统源码丨同城排队预约下单微信小程序公众号 his源码
  12. Quartz集群配置报错 This scheduler instance (XXXX) is still active but was recovered by another instance...
  13. 活动现场大屏幕互动系统源码,包含3D签到投票抽奖等功能
  14. 数据分析(Python)入门—鸢尾植物数据集处理
  15. android:绘图
  16. Excel应用-各地GDP的综合对比图表-Part2(平均线图、复合饼图、瀑布图、帕累托图)
  17. 2019-04-07 Python之利用PIL改变图片颜色和生成手绘图
  18. 【Audio】Unity音频模块:加载、转换、剪切、混音、合并
  19. Java基础之《JVM性能调优(3)—堆》
  20. FileZilla连接虚拟机Ubuntu,无法连接到服务器

热门文章

  1. Storwize V7000是阵列也是平台
  2. 问题五十一:怎么用ray tracing画tear drop
  3. linux禁用ssh弱加密算法,SSHSSL弱加密算法漏洞修复
  4. 大数据可视化平台优点在哪
  5. 数据可视化工具的意义有哪些
  6. 数据分析的五个阶段及价值
  7. C函数改写成汇编语言函数,帮忙将一个C函数写成汇编语言
  8. 卫星轨道的估计问题(Matlab)(二):扩展卡尔曼滤波(EKF)对新问题的尝试
  9. 返回通知异常通知环绕通知
  10. 1041: C语言程序设计教程(第三版)课后习题9.8