阅读更多

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, ExpressSocket.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。

使用方法:

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 进行互联。

编译自:Top 10 Node.js frameworks for end-to-end Web testing
  • 大小: 40.9 KB
  • 大小: 159.6 KB
  • 大小: 50.7 KB
来自: oschina
2
0
评论 共 1 条 请登录后发表评论
1 楼 liuchang615270 2017-06-15 14:08
初学者,支持下

发表评论

您还没有登录,请您登录后再发表评论

相关推荐

  • wiin

    维恩

  • win10账户已经是管理员身份为什么还不能以管理员身份运行某些命令

    1.win+R 运行 gpedit.msc 2.在本地组策略编辑器窗口中,点击“计算机配置”,然后找到“Windows设置”: 3.最后在右侧双击打开【用户账户控制:用于内置管理员账户的管理员批准模式】; 双击该项,在打开的属性窗口...

  • 安装驱动出现错误提示“文件的哈希值不在指定的目录文件中”

    这类问题一般出现在Win8 & WIn10系统中。笔者是Win10系统,操作大同小异。 错误提示如下: 打开 设置→更新和安全 点击 恢复 选项栏,点击立即重启 重启后,依次点击 疑难解答→高级选项→启动设置 点击 ...

  • LINUX还是WIIN?

    今天在帮网友配置PHP环境时突然看看到一篇文章:内容大致如下:大家都知道LINUX是一个非常好且安全的系统,但是不乏有些人喜欢WIN那个垃圾系统来做服务器,不安全又慢我已不做WEB开发好多年,偶尔玩玩PHP;...

  • WIin10——QTP10.0运行mgn-mqt82未能生成lservrc文件

    今天在Win10系统安装了QTP10.0,安装步骤都是按照破解教程执行的: 1.安装qtp,一路默认下来,到要求输入License的界面 2.拷贝mgn-mqt82.exe(下载)到C:\Program Files\Mercury Interactive(自己手动创建)文件夹...

  • 联想z50-70,WiFi不能用解决办法

    联想z50-70,WiFi不能用解决办法 电脑重装了下系统,装的是win7,因为是第一次装,导致装完各种问题,就各种百度,知乎……,忙活了大半天,问题都解决了,可不知怎么了,WiFi突然连不上了,一直是下图这种情况: 我...

  • windows7蓝牙怎么打开_windows7系统玩游戏不能全屏怎么办?

    如果遇到windows7系统玩游戏不能全屏怎么办?解决办法步骤如下:1、依次打开,桌面的“开始”-“运行”(也可使用“Win+R”组合快捷键)。2、在运行窗口中输入“regedit”,点击“确定”选项。3、在“注册表编辑器”后...

  • WIIN7系统笔记本玩魔兽争霸不能全屏

    定位到HKEY_LOCAL_MACHINE------SYSTEM------ControlSet001-------Control-------GraphicsDrivers-------...选择查找,输入Scaling,在右框内即可看到scaling,右键scaling选择修改,将数值改为3即可,原值为4。 ...

  • 怎么关闭windows中不在控制面板上的smartscreen筛选器

    TOCsmartscreen筛选器不在控制面板上 我的电脑系统时windows10家庭中文版,我的安全和维护界面如图,并没有更改smartscreen筛选器的选项: ![在这里插入图片描述]...

  • wiin10怎么装mysql_如何在win10上安装mysql数据库

    MySQL是一个开源的关系型数据库,是最受欢迎的开源软件...电脑小白肯定不太明白。因此,这里详细教您在win10上安装mysql数据库的方法。如何在win10上安装mysql数据库1、双击mysql-installer-community-5.7.20.0.msi安...

  • win10 不能搜索到wifi信号

    打开wifi后,但是经常不能搜索到周边应该搜索的wifi信号,解决办法: 方法一:简单粗暴,重启电脑。 方法二:自我诊断:控制面板-》网络和 Internet-》网络连接-》在WLAN上右键-》选择诊断即可。 ...

  • VC++WIin32版扫雷游戏

    WIin32版扫雷程序 无聊写的 有需要的便宜拿去玩

  • Windows10(家庭版)安装Docker-desktop并运行docker启动redis服务

    Hyper-V进行勾选 4、检查WSL并更新 在终端cmd窗口输入,如果报错则没安装 wsl -l 安装wsl(安装了则不需要执行) dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /no...

  • yolov5、Wiin32DiskImager、Etcher等

    yolov5、Wiin32DiskImager、Etcher等

  • UDP&TCP在windows下基于winsock的数据传输实现

    windows下的基于winsock的socket编程,实现了UDP和TCP的数据传输,其中的TCP的实现自然也包括TCP协议中的Server和Client建立连接的过程。代码易懂。

  • 关于WIIN7系统的隐藏分区

    其实,这100MB的隐藏分区本身并不可怕,可怕的是将它删除或者格式化之后将无法进入系统,因为Windows 7的启动文件会存放在这个隐藏分区中。要避免隐藏分区的出现很简单,只需要在安装系统的过程中,不使用安装程序...

  • .net应用程序如何批上XP的外衣?

    如果能够上我们的程序运行在XP环境中能自动应用XP的主题样式那就省时多了,让MICROSOFT给我们去画控件!以下是我所所试验过的解决办法:1.Application.EnableVisualStyles方法(只适和.NET 1.1及以后版本支持)在Main...

  • windows 2008 R2系统下搭建php项目运行环境步骤,仅为自己学习笔记

    1、安装宝塔软件2、在宝塔软件...相关参考文档4、在防火墙中设置端口,开放3306端口,否则报10038错误,参考文档5、给mysql设置远程连接,在cmd中进入进行授权,在系统盘中找到安装目录cd\进去进行操作。mysql开启远...

  • WIin32API帮助

    关于VB和VC的API说明,帮助文件,从网上收集到的;希望对大家有所帮助。

  • WIin10 JMeter5.3 安装配置

    目录一 . JMeter介绍二 . 准备工作三 . 安装四 . 配置环境变量五 ....本文是在win10环境下安装使用jmeter,jmeter可以运行在多平台上Windows和...负载测试: 这类测试使系统或者应用程序在预先设计好的极端场景下测试运行

Global site tag (gtag.js) - Google Analytics