1.3 Node.js应用场景
前面我们已经初步介绍了Node.js的历史和特点,接下来认识一下Node.js的主要应用场景。
1.Web开发:Express+EJS+MongoDB/MySQL
Express框架是轻量级的Node.js应用框架。使用Express框架可以快捷地搭建网站。它建立在Node.js内置的Http模块上,并对Http模块实现再次包装,从而实现处理Web的请求。
EJS是一个嵌入式的JavaScript模板引擎,通过模板引擎可以快速地生成HTML页面。
MongoDB是一款非关系型数据库,和MySQL功能类似。使用该数据库可以用于存储相关的网站开发数据,实现动态网站的开发与基本的应用。
使用Node.js开发网站同Java开发框架的SSH、SSM类似,需要配合Express+EJS+MongoDB/MySQL一起使用。
2.REST开发:Restify
Restify是一个基于Node.js的REST应用框架,支持服务器端及客户端。Restify和Express相比更加专注于REST服务。它去掉了Express的Template、Render等功能,同时强化了REST协议的使用、版本化的支持,以及HTTP的异常处理。
3.Web聊天室:Express+socket.io
socket. io是一个基于Node.js架构体系,并且支持WebSocket协议用于及时通信的软件包。socket.io给浏览器构建实时应用提供了完整的封装。socket.io是完全由JavaScript实现的。
4.Web爬虫:Cheerio/Request
Cheerio是一个为服务器特别定制的,且快速灵活的,封装好的jQuery核心功能工具包。Cheerio包括jQuery的核心子集,从jQuery中去除了所有与DOM不一致,以及同浏览器不兼容的部分,揭示了它真正优雅的API。Cheerio工作在一个非常简单的DOM模型之上,可使其解析、操作、渲染都变得十分高效,因此可以更加快速地使用Web爬虫。
5.Web博客:Hexo, Ghost
Hexo是一个轻量级且简单基于Node的一个静态博客框架。通过Hexo可以快速创建自己的博客,仅需几条命令就可以轻松完成。
在发布时,Hexo既可以直接部署在自己的Node服务器上,也可以部署在Github上。对于个人用户来说,部署在Github上好处有很多,不仅可以省去服务器的成本,还可以减少各种系统维护带来的麻烦。
Ghost是一个基于Node.js的轻量级的类似于WordPress的Blog。该Blog是由WordPress原班人马打造,使用Ghost可以快速创建美观且高效的Web博客。
6.Web论坛:Node Club
Node Club是用Node.js和MongoDB开发的新型社区软件,其界面优雅,功能丰富,并且小巧灵活。它已在Node.js中文技术社区CNode中得到了应用。
7.Web幻灯片:Cleaver
Cleaver可以生成基于Markdown的演示文稿。它只需要30s就可以生成一个精美的演示文稿。
8.OAuth认证:Passport
Passport是一个基于Node.js的认证中间件。Passport的功能只是为了进行登录认证。因此其代码干净,并且容易维护。它可以相当方便地集成应用到其他应用中。Passport可以根据应用程序的特点,配置不同的认证机制。
9.Web控制台:tty.js
tty. js是一个支持在浏览器中运行的命令行窗口。它基于Node.js平台,并且依赖socket.io库,通过WebSocket与Linux系统通信。
tty. js可支持多Tab窗口模型,如vim、mc、irssi、vifm语法,还支持xterm鼠标事件、265色显示,以及支持多session。
10.客户端应用工具:node-webkit
node-webkit是Node.js与WebKit技术的融合,可提供一个跨Windows、Linux平台的客户端应用开发底层框架,利用流行的Web技术来编写应用程序的平台。应用程序的开发人员可以轻松利用Web技术来实现各种应用程序。node-webkit性能和特色已成为世界领先的跨平台应用程序。
11.操作系统:NodeOS
NodeOS是利用Node.js开发的一款友好的操作系统。该操作系统完全建立在Linux内核之上,并且采用Shell和NPM进行包管理。使用Node.js不仅可以进行包管理,还可以管理脚本和接口。