本篇文章主要的介绍了关于node.js的定义和说明,还有关于node.js的十种应用场景,让大家知道node.js能应用在哪些方面,现在我们一起来看这篇文章吧
首先我们要知道node.js是什么?
一、node.js是什么(其实就是学web服务器开发)
1.是一个js运行时环境(简单来说就是可以解析、执行js代码):不是一门语言/库/框架
(1)node.js中的javascript没有bom、dom,只有ecmascript(基本语法),因为服务端不操作页面
(2)在node这个javascript执行环境中为js提供了一些服务器级别的操作api(文件读写、构建网络服务、网络通信、http服务器等)
2.特性:使用事件驱动、非阻塞io模型(简单来讲就是异步)、轻量高效
3.大多数与js相关的包都放在npm上
例如:有了npm之后,一条命令就可以下在不同的库/框架(比如jquery),不用再到各个库/框架的官网上去下载
二、node.js能做什么
1.web服务器后台(java、php做的node.js都能做)
2.命令行工具
注释1:任何服务端技术的bs编程模型都是一样的,和语言无关
注释2:node没有html文件,只有.js文件
现在细数node.js的10个应用场景:
1.web开发:express + ejs + mongoose/mysql
express 是轻量灵活的nodejs web应用框架,它可以快速地搭建网站。express框架建立在nodejs内置的http模块上,并对http模块再包装,从而实际web请求处理的功能。
ejs是一个嵌入的javascript模板引擎,通过编译生成html的代码。
mongoose 是mongodb的对象模型工具,通过mongoose框架,可以进行访问mongodb的操作。
mysql 是连接mysql数据库的通信api,可以进行访问mysql的操作。
通常用nodejs做web开发,需要3个框架配合使用,就像java中的ssh。
2.rest开发:restify
restify 是一个基于nodejs的rest应用框架,支持服务器端和客户端。restify比起express更专注于rest服务,去掉了express中的template, render等功能,同时强化了rest协议使用,版本化支持,http的异常处理。
3.web聊天室(im):express + socket.io
socket.io一个是基于nodejs架构体系的,支持websocket的协议用于时时通信的一个软件包。socket.io 给跨浏览器构建实时应用提供了完整的封装,socket.io完全由javascript实现。
4web爬虫:cheerio/request
cheerio 是一个为服务器特别定制的,快速、灵活、封装jquery核心功能工具包。cheerio包括了 jquery核心的子集,从jquery库中去除了所有dom不一致性和浏览器不兼容的部分,揭示了它真正优雅的api。cheerio工作在一个非常简单,一致的dom模型之上,解析、操作、渲染都变得难以置信的高效。基础的端到端的基准测试显示cheerio大约比jsdom快八倍(8x)。cheerio封装了@fb55兼容的htmlparser,几乎能够解析任何的 html 和 xml document。
5.web博客:hexo
hexo 是一个简单地、轻量地、基于node的一个静态博客框架。通过hexo我们可以快速创建自己的博客,仅需要几条命令就可以完成。
发布时,hexo可以部署在自己的node服务器上面,也可以部署github上面。对于个人用户来说,部署在github上好处颇多,不仅可以省去服务器的成本,还可以减少各种系统运维的麻烦事(系统管理、备份、网络)。所以,基于github的个人站点,正在开始流行起来….
6.web论坛: nodeclub
node club 是用 node.js 和 mongodb 开发的新型社区软件,界面优雅,功能丰富,小巧迅速, 已在node.js 中文技术社区 cnode 得到应用,但你完全可以用它搭建自己的社区。
7.web幻灯片:cleaver
cleaver 可以生成基于markdown的演示文稿。如果你已经有了一个markdown的文档,30秒就可以制作成幻灯片。cleaver是为hacker准备的工具。
8.前端包管理平台: bower.js
bower 是 twitter 推出的一款包管理工具,基于nodejs的模块化思想,把功能分散到各个模块中,让模块和模块之间存在联系,通过 bower 来管理模块间的这种联系。
9.oauth认证:passport
passport项目是一个基于nodejs的认证中间件。passport目的只是为了“登陆认证”,因此,代码干净,易维护,可以方便地集成到其他的应用中。web应用一般有2种登陆认证的形式:用户名和密码认证登陆,oauth认证登陆。passport可以根据应用程序的特点,配置不同的认证机制。本文将介绍,用户名和密码的认证登陆。
10.定时任务工具: later
later 是一个基于nodejs的工具库,用最简单的方式执行定时任务。later可以运行在node和浏览器中。
以上就是本篇关于node.js的介绍还有十种应用场景的介绍了。想学node.js方向的同学可以到node.js学习手册
【小编推荐】
html搜索框怎么设置?html搜索框input标签的使用方法实例
html base标签怎么用?html base标签的用法总结
以上就是node.js是做什么的?node.js的10种应用场景介绍的详细内容。