
Node.js
文章平均质量分 50
houyanhua1
这个作者很懒,什么都没留下…
展开
-
Node.js 异步流程控制,回调函数嵌套
原创 2018-05-15 16:23:00 · 628 阅读 · 0 评论 -
Node.js npm命令运行node.js脚本
//通过npm运行node脚本 (控制台应用程序)cmd---cd package.json所在的目录---npm start cmd---npm (通过该命令可以查看npm后面能够设置的具体命令)package.json:package.json{ "scripts":{ "start": "node demo.js", // cmd环境中,npm start命令 就相当于 nod...原创 2018-05-13 10:01:58 · 10200 阅读 · 0 评论 -
Node.js http模块
https://blog.youkuaiyun.com/houyanhua1/article/details/79436056demo.js:'use strict' // 使用严格模式 ECMAScript5 (后端Node.js不需要考虑兼容性问题)const http = require('http');// 创建一个服务器实例const server = http.createServe...原创 2018-05-12 16:26:01 · 162 阅读 · 0 评论 -
Node.js gm模块处理图片(缩略图,加水印,裁剪图片)
demo.js:var fs = require('fs');var gm = require('gm'); // 图片处理模块 npm安装模块并且需要电脑(服务端)安装graphicsmagick软件(gm.exe加入环境变量)// 缩略图gm('./原图.jpg') .resize(50, 50,"!") // 缩略图 "!"表示不保持宽高比,可能会变形 .wri...原创 2018-05-18 11:48:58 · 2804 阅读 · 0 评论 -
Node.js crypto模块,加密,md5
demo.js:var crypto = require('crypto');var md5 = crypto.createHash('md5');var password = md5.update('123456').digest('base64');console.log(password);原创 2018-05-17 21:47:17 · 268 阅读 · 0 评论 -
Node.js fs模块,读取流、写入流,管道流。createReadStream、createWriteStream、pipe
demo.js:'use strict' // 使用严格模式 ECMAScript5 (后端Node.js不需要考虑兼容性问题)const fs = require("fs");const rs = fs.createReadStream('c:/11.mp4'); // 文件读取流const ws = fs.createWriteStream('c:/cc.mp4'); /...原创 2018-05-10 21:36:14 · 10744 阅读 · 0 评论 -
Node.js Promise异步流程控制
demo.js:'use strict' // 使用严格模式 ECMAScript5 (后端Node.js不需要考虑兼容性问题)// promise异步流程控制(避免异步回调函数的多层嵌套) (异步变同步)const fs = require("fs");// promise底层实现原理。var rf = function() { return new Promise...原创 2018-05-10 20:17:37 · 340 阅读 · 0 评论 -
Node.js ECMAScript6 字符串的扩展函数,字符串的拼接,字符串以...开头/结尾
demo.js:'use strict' // 使用严格模式 ECMAScript5 (后端Node.js不需要考虑兼容性问题)var foo = 'aghrjieowngfdabhugre';// 字符串的扩展函数console.log(foo.includes('eown')); // true 是否包含console.log(foo.startsWith('agh')原创 2018-05-09 22:26:45 · 1844 阅读 · 0 评论 -
Node.js ECMAScript6 let声明的变量的作用域是块级作用域
demo.js:'use strict' // 使用严格模式 ECMAScript5var a = 123;if(true){ var a = 456; //var声明的变量,只有函数可以分割其作用域。}console.log(a); // 456let b = 123; // let声明的变量的作用域是块级作用域(花括号{}可以分割作用域)if(true)原创 2018-05-09 21:29:22 · 303 阅读 · 0 评论 -
Node.js ECMAScript6 JavaScript, 箭头函数( ()=>{} )
demo.js:// 箭头函数// var fn1 = function() {// return '123';// };var fn1 = ()=>'123'; // ()表示函数的参数,=>后的表示返回值。var fn2 = v=>v*2;var fn3 = (v1,v2)=>v1+v2;var fn4 = (v1,v2)=>{console.log(v1); c原创 2018-05-08 18:00:39 · 7954 阅读 · 0 评论 -
Node.js 内置path模块,join()拼接路径,extname()获取扩展名
demo.js:var path = require('path'); // node内置模块。// path.join() 拼接路径var fullPath = path.join(__dirname,'aa.txt'); // __dirname是获取当前文件绝对路径的全局对象。console.log(fullPath); // C:\Users\zhangsan\Web原创 2018-05-09 11:59:52 · 6311 阅读 · 0 评论 -
Node.js 控制台应用程序,控制台全局运行Node.js脚本
demo.js:#!/usr/bin/env node//上面一行命令 表示该文件是一个脚本文件,可以直接运行,运行环境是node环境。 必须写在第一行// 需要在package.json中设置"bin"属性。 cmd---cd package.json所在目录---npm link (将该目录安装到全局)// 然后可以在命令行中执行"bin"属性设置的命令。 cmd---hehe ...原创 2018-05-13 10:09:14 · 2196 阅读 · 0 评论 -
Node.js 通过递归实现异步流程控制(异步变同步)
demo.js:const fs = require('fs');fs.readdir('./public',function(err,files) { var wenjianjia = []; (function iterator(i) { if(i==files.length){ console.log(wenjianjia...原创 2018-05-13 16:28:34 · 1195 阅读 · 0 评论 -
Node.js WebSocket协议,全双工通信(基于事件)
学习文档笔记:https://pan.baidu.com/s/1zIOiGyEEZdmiWqBeLPoNjg密码:ker5app.js(服务器端):var http = require("http");var fs = require("fs");var server = http.createServer(function(req,res){ if(req.url == "/"){...原创 2018-05-21 11:36:30 · 762 阅读 · 1 评论 -
Node.js 全局变量global对象
demo.js:global.a = 666; // 全局变量都在global对象中。a = 555; //等价于 global.a = 555; 不用var,直接声明的变量是全局变量。 node中的全局变量都在global对象中。console.log(global.a);...原创 2018-05-07 20:19:04 · 8941 阅读 · 3 评论 -
Node.js 获取当前文件路径,文件名(__dirname,__filename)
demo.html:console.log(__dirname); // 当前文件所在的绝对路径。console.log(__filename); // 当前文件的文件名,包括全路径。 __dirname和__filename都是全局对象。原创 2018-05-07 20:50:54 · 23911 阅读 · 0 评论 -
Node.js 计算代码执行的时间(console.time(' '),console.timeEnd(' '))
demo.js:console.time('test'); // 配合timeEnd()成对出现。 打印出代码执行的时间。// 比较耗时的代码for (var index = 0; index<100000000;index++){}console.timeEnd('test'); // 'test'名字要和time()中的名字保持一致。...原创 2018-05-07 20:33:16 · 2643 阅读 · 0 评论 -
Node.js 断言,assert()
demo.js:var a = 1;console.assert(a == 2,'a不等于2'); // 断言(用于测试、调试)。如果a等于2就通过,否则输出错误信息。原创 2018-05-07 20:25:52 · 266 阅读 · 0 评论 -
Node.js mongoose操作mongoDB, 建立索引
为集合(表)中的字段建立索引可以提高查询速度,但是却增加了数据插入的速度。 一般对不经常变动的集合(表)建立索引。demo.js:// ........var animalSchema = new Schema({ name: String, type: String, tags: { type: [String], index: true } // 第一种方式。 字段级别})...原创 2018-05-20 15:26:22 · 3580 阅读 · 0 评论 -
Node.js mongoose操作mongoDB, subSchema(类似外键)
demo.js:/** * Created by Danny on 2015/9/29 10:18. */var mongoose = require('mongoose');mongoose.connect('mongodb://localhost/xuanke');var db = mongoose.connection;db.once('open', function (cal...原创 2018-05-20 14:56:43 · 1327 阅读 · 0 评论 -
Node.js mongoose操作mongoDB, 注册静态方法(statics)
demo.js:var mongoose = require('mongoose');mongoose.connect('mongodb://localhost/test');var db = mongoose.connection; // 获取数据库的连接对象。db.once('open', function (callback) { console.log("数据库成功打开"...原创 2018-05-20 13:23:05 · 1283 阅读 · 0 评论 -
Node.js mongoose操作mongoDB, 注册实例方法(methods)
demo.js:var mongoose = require('mongoose');mongoose.connect('mongodb://localhost/test');var db = mongoose.connection; // 获取数据库的连接对象。db.once('open', function (callback) { console.log("数据库成功打开"...原创 2018-05-20 13:09:27 · 608 阅读 · 0 评论 -
Node.js mongoose操作mongoDB数据库 学习笔记文档
学习笔记文档:https://pan.baidu.com/s/1cCKrjBHJyaWGC9RyVjC6KQ密码:ox3q原创 2018-05-20 11:37:39 · 301 阅读 · 0 评论 -
Node.js MongoDB的安装 配置 数据库的CRUD操作 索引 学习笔记文档
https://pan.baidu.com/s/1nNhw6V8fNOwRh7cpetfrOg密码:lg8f原创 2018-03-06 18:13:51 · 190 阅读 · 0 评论 -
Node.js Mongodb非关系型数据库,安装 配置 使用
一、MongoDb安装 官网:https://www.mongodb.com/ 手册:https://docs.mongodb.org/manual/ 安装完成配置环境变量 C:\Program Files\MongoDB\Server\3.0\bin 加入到系统的path 打开cmd输入:mongo命令看是否安装成功。 cmd----mongo二、使用原创 2018-03-06 13:19:05 · 269 阅读 · 0 评论 -
Node.js 上传文件(multiparty包) (基于express)
文件上传.js://文件上传插件的使用 multiparty包 /* body-parser包只能处理post请求,不能上传图片。 multiparty包post请求和文件都可以处理 1.cnpm install multiparty --save 2.var multiparty = require('multiparty'); 3.上传图片的地方 var form = new...原创 2018-03-08 11:44:03 · 2113 阅读 · 0 评论 -
Node.js express框架中间件, 应用级中间件(路由过滤),内置中间件(静态路由托管),第三方中间件(处理post请求)
应用级中间件.js:/** 中间件:就是匹配路由之前和匹配路由之后做的一系列的操作。 匹配路由之前(类似父类的构造函数),路由过滤,检查是否登录,权限过滤 (应用级中间件) 匹配路由之后(类似析构函数),未匹配到任何路由(404页面路由)(错误处理中间件) */var express=require('express'); /*引入*/var app...原创 2018-03-07 12:50:18 · 1346 阅读 · 0 评论 -
Node.js MongoDB 在Node.js中的使用,CRUD操作
学习笔记文档:https://pan.baidu.com/s/1nNhw6V8fNOwRh7cpetfrOg 密码:lg8f如果查询(删除、修改)中的条件包含自增长的"_id"字段时 ,需要引入 ObjectID 如下: var ObjectID = require('mongodb').ObjectID; //使用到 "_id"字段时,需要引入 var result=d...原创 2018-03-06 21:54:28 · 741 阅读 · 0 评论 -
Node.js MD5加密(安装md5-node包)
md5Demo.js:/**1.安装模块 npm install md5-node --save2.引入模块 var md5=require('md5-node');3.使用 md5('123456');*/var md5=require('md5-node');console.log(md5('123456'));//e10adc3949ba59abbe56e057f...原创 2018-03-08 09:24:21 · 10334 阅读 · 0 评论 -
Node.js ejs模块(第三方模块) 视图模板解析
EJS 是后台模板,可以把我们数据库和文件读取的数据显示到 Html 页面上面(解析页面视图模板)。它是一个第三方模块,需要通过 npm 安装https://www.npmjs.com/package/ejs安装: npm install ejs –save / cnpm install ejs --saveEJS 常用标签<% %> 流程控制标签(当成JavaScript代码解...原创 2018-03-05 22:28:22 · 1073 阅读 · 0 评论 -
Node.js express框架 session保存到(mongodb)数据库中(分布式web共享session)
session-mongo.js:/* 1.需要安装 express-session 和 connect-mongo 模块 cnpm install express-session --save cnpm install connect-mongo --save 2.引入 var session = require("express-session"); v...原创 2018-03-07 19:39:56 · 1919 阅读 · 0 评论 -
Node.js express框架中使用session
学习笔记文档:https://pan.baidu.com/s/1HCAhOtjgljdVB2X5KXjj5g 密码:z9zlsessionDemo.js:/* 1.安装 express-session cnpm install express-session --save 2.引入 var session = require("express-session"); 3...原创 2018-03-07 18:24:54 · 695 阅读 · 0 评论 -
Node.js express框架中使用cookie,加密cookie (signed)
cookie加密.js:/*cookie的加密:1.配置cookie-parser中间件 app.use(cookieParser('xxx')); //xxx表示加密的随机数(相当于密钥)2.设置加密的cookie res.cookie('userinfo','123',{maxAge:600000,signed:true}); //signed设置为true 表示加密3...原创 2018-03-07 16:33:22 · 3170 阅读 · 0 评论 -
Node.js express框架 cookie安装和使用
学习笔记文档:https://pan.baidu.com/s/1qmfUIo6HHUs1gzP-CApW9A 密码:p514cookieDemo.js:/*cookie-parser可以设置和获取cookie1.安装 cnpm install cookie-parser --save2.引入 var cookieParser = require('cookie-parser')...原创 2018-03-07 15:46:26 · 924 阅读 · 0 评论 -
Node.js express框架 静态路由托管 使用ejs模板引擎
学习笔记文档:https://pan.baidu.com/s/1uuOKLS0LHPDmfEoB8KaOrw 密码:rhccdemo.js(路由文件):/*1.安装ejs cnpm install ejs --save2.配置express的模板引擎 app.set("view engine","ejs"); //express 里面使用ejs 安装以后就可以用,不需要引入。3....原创 2018-03-07 10:57:53 · 1019 阅读 · 0 评论 -
Node.js express框架, 路由模块化(express.Router())
路由模块化: http://localhost:3001/平台/控制器/操作方法 http://localhost:3001/admin/goods/addapp.js(入口文件):var express=require('express');//引入模块var admin =require('./routes/admin.js');var home =require('./rou...原创 2018-03-08 16:59:03 · 5743 阅读 · 0 评论 -
Node.js http模块
http模块.js/* 如果我们使用PHP来编写后端的代码时,需要Apache 或者 Nginx 的HTTP 服务器,并配上 mod_php5 模块和php-cgi,来处理客户端的请求相应。 不过对 Node.js 来说,概念完全不一样了。使用 Node.js 时,我们不仅仅 在实现一个应用,同时还实现了整个 HTTP 服务器。* *///1.引入http模块var http=requ...原创 2018-03-04 13:27:05 · 206 阅读 · 0 评论 -
Node.js get、post提交数据
demo.js://引入http模块var http=require('http');var url=require('url');var ejs=require('ejs'); //ejs模块(第三方模块) 用于视图模板解析var querystring = require('querystring'); //querystring模块http.createServer(fun...原创 2018-03-06 09:46:15 · 281 阅读 · 0 评论 -
Node.js events模块,事件驱动,异步处理(非阻塞IO)的三种方式。
demo.js(第一种方式,异步请求改成同步请求):var fs = require('fs'); //引入fs模块 //异步方式读取文件内容 fs.readFile('./package.json',function(error,data){ if(error){ console.log(error); return false; } ...原创 2018-03-05 20:13:43 · 883 阅读 · 0 评论 -
Node.js fs模块中的异步请求改为同步请求
demo.js:var fs = require('fs'); //引入fs模块//异步方式读取文件内容fs.readFile('./package.json',function(error,data){ if(error){ console.log(error); return false; } //console.log(data)...原创 2018-03-05 18:32:08 · 1109 阅读 · 0 评论