但是,是什么原因让 Node.js 突然间如此流行呢?听起来像是有了一种新的 Web 开发技术,是这样吗?...我们来汇总一下原因:1、前端/后端开发使用同一种语言像 ASP.NET 或 Spring 这样的技术需要开发人员学习一门新的服务端语言,比如C#,VB.NET 或者 Java。...而 Node.js在服务端和客户端都是使用 JavaScript,这意味着开发人员在各层上只需使用一门语言。...3、轻量Node.js 使用的是事件驱动架构,这就是说在它上面做的每一件事,每一个独立的调用和操作,都是一系列的异步回调。...4、支持 NoSQL 数据库在 Node.js 应用中使用像 MongoDB 这样的 NoSQL 数据库简是十分常见的,MongoDB 和传统的 SQL数据库不同的是,它使用的是基于文档的模型而非关系型模型
/** * Created by Administrator on 2017/11/3. * 获取文心雕龙 保存到数据库 */ let superage...
Node.js 的官网地址: https://nodejs.org/zh-cn (opens new window) # Node.js可以做什么 Node.js 作为一个 JavaScript 的运行环境...http://restify.com (opens new window),可以快速构建 API 接口项目 读写和操作数据库、创建实用的命令行工具辅助前端开发、etc… # fs 文件系统模块 导入使用...导入使用: const path = require('path') # path.join() 用来将多个路径片段拼接成一个完整的路径字符串 语法: path.join([...paths]) 例子...导入使用: const http = require('http') # http.createServer() 调用 http.createServer() 方法,即可快速创建一个 web 服务器实例...使用 res.end() 把内容响应给客户端 res.end(content) }) server.listen(80, () => { console.log('server running
了解Node NodeJS :主要应用于开发服务器,做数据API ,设计路由,和前端的主要区别在于,前端主要负责效果和交互、 node.js是追求性能极致的产物,主要的三个特点是: 单线程、Non-blocking...I/O、Event Driven Nodejs和其他后端语言的不同: 采用单线程, 所以 需要非阻塞I/O,所以 需要事件驱动。...极大地提高了CPU的利用率: node没有自己的语法,使用V8引擎,用的是js,V8引擎解析js,效率非常高。...(使用路由) 模块:在Node.js中,以模块为单位划分所有的功能,并且提供了一个完成的模块加载机制,我们可以将应用程序划分为各个不同的部分。...都只能在这个文件内部有效;当需要从此文件外部引用这些变量、函数时,必须使用exports进行暴露,然后使用require引用。
querystring模块的使用针对post提交和get提交 通过http模块中的request事件可以得到在服务端拿到客户端的提交方式:method 1.操作为:req.method ...(url.parse(req.url).query)//get类型获取查询字符串 获取类型为:一个对象 { username: 'ss', password: 'ss' } 2)针对post需要使用
pathinfo/pathname风格参数如下: 例如: /detail/1/economy (detail/:id/:type)
如果一定要使用,需要修改配置。 配置使用NodeJS API 渲染进程将在一个单独的沙盒环境中运行,无法直接访问 Node.js 的 API。...因此,在使用nodeIntegration时需要谨慎处理,并遵循安全最佳实践。 禁用contextIsolation也会增加应用程序的潜在安全风险。... // 我们可以在渲染进程中直接使用NodeJS的API const fs = require('fs'); console.log...document.getElementById('btn') btn.addEventListener('click', function () { // 使用主进程中才能使用的模块...remote 模块,渲染进程可以通过调用主进程的模块和函数来获取主进程提供的功能,它不仅仅是在渲染进程中可以使用NodeJS API 那么简单,通过它还可以使用在主进程中才能使用的模块。
使用NodeJS实现JWT原理 jwt是json web token的简称,本文介绍它的原理,最后后端用nodejs自己实现如何为客户端生成令牌token和校验token ?...https://juejin.im/post/6873700061000237069 1.为什么需要会话管理 我们用nodejs为前端或者其他服务提供resful接口时,http协议他是一个无状态的协议...,因为jwt使用起来轻便,开销小,后端无状态,所以使用比较广泛。...因为是同步的过程,所以可以用try catch来捕捉错误 9.原理的实现 sha256哈希算法,可以用nodejs的内置加密模块crypto, 生成base64字符串,要注意的是生成base64需要为+...对于某些重要操作,用户在使用时应该每次都进行进行身份验证。 为了减少盗用和窃取,JWT 不建议使用 HTTP 协议来传输代码,而是使用加密的 HTTPS 协议进行传输。
前言 今天要编译一个其他nodejs版本的程序,然后就去github找找看看是不是有相应的nodejs版本管理工具,然后就找到了!...nvm-windows : https://github.com/coreybutler/nvm-windows 步骤 主要分为安装和使用两个步骤~ 安装 下载 下载地址 : https://github.com...路径 确认安装即可 安装完确认 验证 nvm version 使用 命令列表 $ nvm --help Running version 1.1.7....Defaults to https://nodejs.org/dist/. Leave [url] blank to use default url....## 安装指定版本 nvm install 14.15.0 切换版本 nvm use 15.8.0 卸载nodejs nvm uninstall 15.8.0 报错 切换版本报错 C:\Users\
使用node-zookeeper-dubbo模块进行处理,官方的文档还是有些简陋,我进行进一步的讲解 1、安装node-zookeeper-dubbo npm install node-zookeeper-dubbo
为什么使用 Node.js 实现反向代理 提到 反向代理 时我们通常会想到 Nginx,它配置简单,性能很好 那么使用 Node.js 实现反向代理有什么必要呢?...一个典型的使用场景就是 微服务网关 ?...对于客户端来说,不需要关心这些服务的细节,只需要和网关打交道,由服务网关来指定服务提供者 后端具体有哪些可用的服务,是动态的,例如有问题的服务下线、新服务上线,在这种动态场景下,Nginx 就不太适合了,使用
87d57a0b4321@example.com> // Preview URL: https://ethereal.email/message/WaQKMgKddxQDoou... } /* 使用
昨天就开始想使用nodemailer来实现一个发送邮件的功能,不过发现了很多个坑,网上给的资料也很杂很乱,所以决定写一篇真正能用的来帮助大家减少弯路 ? 首先,我们先来看下代码,如上所示....步骤: 1.下载npm包: npm install nodemailer --save 2.编写类似于以上的代码:在这里面,我使用smtp来登陆我的邮箱,利用nodemailer.createTransporter...常见错误: 如果使用QQ邮箱的话,你的密码应该是授权码。首先你得开启SMTP服务,步骤如下: 1.打开你的QQ邮箱 2.点击设置,并且选择账户 ? ...然后你使用126邮箱话呢,一样的道理,得先去开启POP3/SMTP服务,开启页面如下 ? ...然后点击下面的客户端授权密码,获取授权码,然后填到pass里即可(不过用126邮箱有个坑,就是你发的内容会被视为垃圾邮件,不给你发送,除非你发给自己) 当然,使用126邮箱的话呢,那个createTransport
JWT是json web token的简称,本文介绍它的原理,最后后端用nodejs自己实现如何为客户端生成令牌token和校验token 一 为什么需要会话管理 我们用 nodejs 为前端或者其他服务提供...,因为jwt使用起来轻便,开销小,后端无状态,所以使用比较广泛。...token=xxxxx 如果是post请求也可以放在请求体中 八 在koa项目中使用 可以使用现成库,jwt-simple 或者 jsonwebtoken...因为是同步的过程,所以可以用try catch来捕捉错误 九 原理的实现 sha256哈希算法,可以用nodejs的内置加密模块crypto, 生成base64字符串,要注意的是生成base64需要为...对于某些重要操作,用户在使用时应该每次都进行进行身份验证。 为了减少盗用和窃取,JWT不建议使用HTTP协议来传输代码,而是使用加密的HTTPS协议进行传输。
从npm镜像服务器下载第三方模块;从npm镜像服务器下载并安装命令行程序到本地;自己发布模块到npm镜像服务器供他人使用。...但是安装的 npm 不一定是最新的版本可以使用以下命令来查看本地 npm 的版本:npm install npm@latest -g@latest表示最新的版本,-g 是 --global 的缩写,表示全局安装查看帮助使用...npm管理的项目,都需要初始化一个package.json文件可以使用以下命令来初始化一个包:npm initnpm init -yes其中,--yes可以简写为-y。...--global | -g | 安装的模块为全局模块,如果命令行模块,会直接链接到环境变量中可以使用 require 关键字来引入本地安装的包。...只要目录下有 npm-shrinkwrap.json 则运行 npm install 时就会优先使用 npm-shrinkwrap.json 中的配置进行安装,没有则使用 package.json 进行安装
下面来看一下在nodejs中如何使用redis的发布订阅。...在nodejs集成redis这篇文章中已经说明了如何在nodejs中集成redis,在这里我们需要对封装好的redis文件进行一些修改 //redis封装 var redis = require('redis...当然,如果你喜欢简单易用的publish和subscribe命令,并且能够承担可能丢失一小部分数据的防线,那么你也可以继续使用redis提供的发布与订阅。
查看Redis命令大全 → 访问Redis论坛 → Redis使用内存计算器 → 应用场景 最近工作中使用Nodejs编写后端程序操作redis,从redis缓存中获取对应的站房的监测环境数据,.../package/node-redis,后来发现了国内阿里的一个Nodejs的redis库,其npm官网地址是:https://www.npmjs.com/package/ioredis,ioredis...1、使用node-redis库 使用npm或cnpm安装依赖 $ npm install node-redis 相关的nodejs代码node_redis_client_demo.js如下所示: var...node ioredis_client_demo.js执行对应的nodejs后台程序,在localhost:3001端口上监听,提供http服务。...https://www.npmjs.com/package/ioredis https://github.com/luin/ioredis 建议在Nodejs后台程序中使用ioredis,功能比较全
经过筛选最终决定使用docxtemplater这个库,这个库如何使用呢,看代码: // 引入相关的库 var PizZip = require('pizzip'); var Docxtemplater...'Doe', phone: '0652455478', description: 'New Website' }); //渲染数据生成文档 doc.render() // 将文档转换文nodejs...能使用的buf var buf = doc.getZip().generate({ type: 'nodebuffer' }); // 输出文件 fs.writeFileSync(path.resolve...4、调用Docxtemplater函数传入压缩数据生成模板文档doc 5、调用文档的setData函数填充数据 6、文档调用render函数生成word 7、调用doc文档的相关函数生成nodejs可以操作的...这个操作是在nodejs端完成的,还有另外一个版本,可以在浏览器端完成,下篇文章再来讨论,上面的代码除了用到了docxtemplate还用到了pizzip库,这个库的作用是将二进制数据转化为zip压缩格式数据的一个库
一、概述 使用Jenkins 远程ssh到linux,使用命令: ssh root@192.168.10.1 'cd /data/test;nohup npm start &' 发现linux服务器的node...二、pm2守护Nodejs 简介 pm2是nodejs的一个带有负载均衡功能的应用进程管理器的模块,类似有Supervisor,forever,用来进行进程管理。...info 0 #查看进程详细信息,0为PM2进程id 停止 pm2 stop all #停止PM2列表中所有的进程 pm2 stop 0 #停止PM2列表中进程为0的进程 三、pm2启动脚本 由于公司的Nodejs...merge_logs: exec_interpreter:应用程序的脚本类型,这里使用的shell,默认是nodejs exec_mode:应用程序启动模式,这里设置的是cluster_mode(集群)
领取专属 10元无门槛券
手把手带您无忧上云