路由器
是一个完整的中间件和路由系统,也可以看做是一个小型的app对象 创建路由器 /* 文件夹结构 db * db.js moudel       userModel.js       public       login.html     &n…
ejs模板的使用
根据指定的模板,批量生成多个类似的东西前端模板引擎后端模板引擎服务器的模板引擎 安装 npm install ejs 语法 /* ejs语法: <% xxx %> 里面能写任意的js代码,但不会向浏览器发送任何东西. <%- xxx%> 能够读取船体过来对象指定key所对应value渲染到页面 <%%= xxx%>…
cookie设置
let express = require('express')let app = express()// demo 路由不对cookie进行任何操作// demo1路由,负责给客户端设置下一个会话cookie// demo2路由,负责给客户端设置下一个持久cookie// demo3路由,负责读取客户端携带过来的cookie// demo4路由,…
session设置
下载 npm install express-session --save //用于在express中操作sessionnpm install connect-mongo --save // 用于将session写入数据库(session持久化) 引入 // 进入express-session模块const session = require('e…
线程和进程
进程 进程负责为程序的运行提供必备的环境进程就相当于工厂中的车间 线程 线程是计算机中最小的计算单位,线程负责执行保进程中的程序线程就相当于工厂中的工人 单线程 一个人干多个js 和浏览器 是单线程 多线程 多个人干一个
Node基础服务架构
JS如何调用C++libuv & V8的功能Event Loop 简单介绍 1.JS如何调用C++ 1.1 Node.js是什么 它是将多种技术组合起来,让JavaScript也能调用系统接口,开发后端应用. 1.2 Node用的了哪些技术 V8引擎libuvC/C++实现的 c-ares、http-parser、OpenSSL、zlib1…
Node中函数的特点
Node中任何一个模块(js文件)都被一个外层函数所包裹 function(exports,require,module,__filename,__dirname){    exports  // 用于支持CommonJS模块化规范的暴露语法    require // 用于支持commonJs模块…
Node中的事件轮询模型
node中的事件循环模型 clearImediate : 清空立执行函数clearInterval : 清除循环定时器clearTimout : 清除一次性定时器setImmediate : 设置立即执行函数setInterval : 设置循环定时器setTimeout : 设置一次性定时器 node事件循环模型经历的阶段 阶段一timers (定…
Buffer缓冲器
Buffer 是一个类似于数组的对象,不同是Buffer是专门用来保存二进制数据的特点效率高,存储和读取快,直接对计算机内存进行操作大小一旦确定了,不可修改每个元素占用内存的大小为1字节是Node的核心模块,无需引用下载,即可使用 // 实例化 Buffer对象 --- 性能特别差let buf = new Buffer(10);// 替代let …