十大 Node.js 的 Web 框架,快速提升工作效率
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 框架,快速提升工作效率相关推荐
- 关于node.js的web框架的应用及并发性能测试
"Node.js 是服务器端的 JavaScript 运行环境,它具有无阻塞(non-blocking)和事件驱动(event-driven)等的特色,Node.js 采用 V8 引擎,同样 ...
- 分享几款UI设计师快速提升工作效率的辅助设计软件
收集「灵感」和「设计素材」几乎是UI设计师日常必不可少的工作.偶尔还会收藏大神的经验文章,而这些东西都收藏在各大网站上,当过一段时间后,你就会发现收集资料都不知道放哪里或是收藏在哪个网站上,所以我们需 ...
- Node.js轻量级Web框架Express4.x使用指南
tip:有问题或者需要大厂内推的+我脉脉哦:丛培森 ٩( 'ω' )و [本文源址:http://blog.csdn.net/q1056843325/article/details/71079663 ...
- 带你理清Node.js 的Web框架的3个层次
web 框架指的是处理 http.https 的服务端框架,Node.js 提供了 http.https 模块用于处理协议数据,这是 web 框架的基础. 但是 http.https 的 api 过于 ...
- 常见的基于node.js的web框架
2019独角兽企业重金招聘Python工程师标准>>> 私人定制,十款最佳Node.js MVC框架 转载于:https://my.oschina.net/letiantian/bl ...
- web开发快速提高工作效率的一些资源
文:祈澈姑娘 前端学习资源实在是又多又广,在这样的一个知识的海洋里,我们像一块海绵一样吸收,想要快速提高效率,平时的总结不可缺少,以下总结了一些,排版自我感觉良好,推送出来,后续持续跟新中...... ...
- HR如何快速提升工作效率?
从招聘到用人管理各个环节,人力资源部门都是公司最重要的职能部门之一,hr的日常工作涉及众多复杂繁琐的内容,比如人员招聘,考核培训等都离不开大量的数据整理和录入操作,但那些和"人"相 ...
- Word不熟练?掌握这些Word技巧和30个快捷键,快速提升工作效率
日常办公里面Word软件是必不可少的,如果你无法熟练的掌握Word,必将会使你的工作效率大大降低!那么如何才能快速的帮助我们提升Word熟练度呢? 下面为大家分享这几个Word技巧和30个Word常用 ...
- 用Node.js 写web框架(番外)
为什么80%的码农都做不了架构师?>>> 我猜好多人都以为我偷懒去了,这周很忙,公正各种文件,准备出国. 不过呢,同时我也考察了若干工具,为开源做准备. Grunt介绍 QUn ...
最新文章
- 计算1至1000间的合数c语言,输出1000以内的素数的算法(实例代码)
- 云服务器 cvm操作系统选择,云服务器cvm操作系统选择
- 第一章 TestNG框架自动化简述
- Sentinel介绍和Windows下安装Sentinel-dashboard
- r软件说明lib文件未指明_软件说明文件
- C#算法设计查找篇之01-顺序查找
- MySQL命名、设计及使用规范《MySQL命名、设计及使用规范》
- 冲刺周期一--站立会议05
- Spring如何加载xml文件
- linux数据包大小控制,linux udp 数据包大小问题
- 医院HIS预约系统源码丨同城排队预约下单微信小程序公众号 his源码
- Quartz集群配置报错 This scheduler instance (XXXX) is still active but was recovered by another instance...
- 活动现场大屏幕互动系统源码,包含3D签到投票抽奖等功能
- 数据分析(Python)入门—鸢尾植物数据集处理
- android:绘图
- Excel应用-各地GDP的综合对比图表-Part2(平均线图、复合饼图、瀑布图、帕累托图)
- 2019-04-07 Python之利用PIL改变图片颜色和生成手绘图
- 【Audio】Unity音频模块:加载、转换、剪切、混音、合并
- Java基础之《JVM性能调优(3)—堆》
- FileZilla连接虚拟机Ubuntu,无法连接到服务器