十大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();
- // logger
- app.use(function *(next){
- var start = new Date;
- yield next;
- var ms = new Date - start;
- console.log('%s %s - %s', this.method, this.url, ms);
- });
- // response
- app.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 进行互联。
来源:51CTO

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
开源项目中经常出现的七种错误
【51CTO.com快译】启动一个新的开源项目可能会遇到一些困难。也许你脑子里有一个很棒的想法,但是想把它们变成富有成效的、健康的、吸引人的社区还需要做很多工作。令人叹息的是,相同的错误总是被无代价的重复,出现低级错误是团队中的忌讳。下面就请跟随笔者一起,看看开源项目中经常出现的错误,并且尝试去规避它们。相信会对你的项目开发有所帮助。 1.聊天代替发送 在数以千计的开源项目中,有太多人因为松散的渠道、邮件列表问题或其它方面在一开始就陷入困境。讨论围绕着房子而展开,范围也越来越大,把许多不同的想法和考虑纳入其中。一个早期的开源原则"尽早发布,经常发布"令我们十分受用。不要试图解决所有的挑战,编写代码,把它放在回购协议中,开始接受影响力请求。当你专注于代码时,你的项目将更快地发展、适应和改进。2.完美的发送 LinkedIn的创始人雷德·霍夫曼曾说过一句名言:"如果你对你的产品的第一个版本不感到尴尬,你就推出的太晚了。"新的开放源代码项目尤其如此。试图让你的第一个版本,甚至是你的一版尽可能完美。事实上,大多数人不会注意到你的第一个版本,所以它并不需要完美。人们在开发过程中注意、消费和参与开...
- 下一篇
企业应用大数据的三重境界:数据·分析·成果
近几年大数据变得越发重要,已成为企业发展不可缺少的要素,同时直接影响甚至改变着我们的生活。当前,处理数量庞大、增长迅猛、种类繁多的数据成为众多企业面临的挑战。Teradata天睿公司作为全球领先的分析解决方案与咨询服务供应商,基于客户需求,提供领先、全面、有效的解决方案,帮助企业获取商业洞察力,并且将之转化为行动力,创造商业价值。 数据·分析·成果 发现价值到创造价值 在我国乃至全球,很多企业都非常认可数据的价值,持续在做数据积累方面的建设,开发或购买了很多系统,如ERP、CRM等。但这些企业存在一个普遍的问题,那就是拥有如此庞大的数据,却不知如何利用。基于海量数据,利用分析手段获取少量且有效的数据,作用于业务以产生最大价值,是所有企业希望看到的结果。但这个过程真正做起来,不是易事。 Teradata天睿公司大中华区副总裁、咨询及服务部门总经理唐青(Janet Tang)表示,简单、量少、信息量相对也少的数据中得出的分析结果是有限的,在具备一定规模且流动的数据环境中得到的分析结果才更有价值。流动数据具有多元化和分析效率两个层面,企业想要得到希望的成果,但挡在前面的是超大规模且多元化数据...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- Red5直播服务器,属于Java语言的直播服务器
- CentOS7设置SWAP分区,小内存服务器的救世主
- CentOS7安装Docker,走上虚拟化容器引擎之路
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
- CentOS关闭SELinux安全模块
- CentOS7,CentOS8安装Elasticsearch6.8.6
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- Linux系统CentOS6、CentOS7手动修改IP地址