node
文章平均质量分 95
star-1331
码而不思则惘,思而不码则怠
展开
-
WebSocket 是什么原理?为什么可以实现持久连接?
WebSocket是HTML5里面的新东西,以前一直没有搞懂具体是什么原理,只知道它可以实现持久连接。偶然在知乎上看到了一位大佬的描述,觉得很不错,形象易懂,故而收集过来分享给大家。一、websocket与httpWebSocket是HTML5出的东西(协议),也就是说HTTP协议没有变化,或者说没关系,但HTTP是不支持持久连接的(长连接,循环连接的不算)首先HTTP有 1.1 和 1.0...转载 2018-11-23 11:03:50 · 104 阅读 · 0 评论 -
Express使用方法汇总(Express+MongoDB)
这儿,我以一个小的商品后台管理案例来进行Express相关方法的总结。项目目录如下:入口文件:app.js//引入express框架 安装:npm install express --savevar express = require('express');//使用expressvar app = new express;//引入路由模块var router = require(...原创 2018-11-07 10:59:43 · 1882 阅读 · 0 评论 -
Express中的session使用
介绍Session用于记录客户状态的一种机制,不同于Cookie的是,Cookie存储在客户端,而Session则将数据存储在服务器上。Session 的用途:session 运行在服务器端,当客户端第一次访问服务器时,可以将客户的登录信息保存。当客户访问其他页面时,可以判断客户的登录状态,做出提示,相当于登录拦截。session 可以和 Redis 或者数据库等结合做持久化操作,当服务...原创 2018-11-02 14:19:27 · 1612 阅读 · 0 评论 -
大文件上传—— 拖拽选择文件、切片上传、断点续传、异步任务并发数控制
大文件上传 拖拽选择文件切片上传断点续传异步任务并发数控制秒传原创 2021-01-13 10:20:54 · 1278 阅读 · 0 评论 -
服务端鉴权之Token——node
Token鉴权原理客户端使用用户名和密码请求登录服务端收到请求,去验证用户名与密码验证成功后,服务端会签发一个令牌(token),再把这个token发送给客户端客户端收到token以后可以把它存储起来,如放在localStorage或Cookie中客户端每次向服务端请求资源的时候都需要带着服务端签发的Token服务端收到请求,然后去验证客户端请求里面带着的token,如果验证成功,就像客户端返回请求的数据Koa实现Token鉴权通过jsonwebtoken加签,koa-jwt验签tok原创 2020-11-08 18:56:27 · 918 阅读 · 0 评论 -
服务端鉴权之Session/Cookie
文章目录CookieSessionKoa中实现Sessionredis存储sessionCookiecookie原理服务端在Header Set-Cookie,然后客户端会自动存取下来(cookie中可以看到)下次请求,请求头会携带cookie传给后端const http = require('http')http .createServer((req,res)=>{ if(req.url === '/favicon.ico'){ res.e原创 2020-11-08 16:13:48 · 522 阅读 · 0 评论 -
新一代Node中间层开发模式
Node中间层—淘宝PHP中间层—Facebook开发模式的演变MVC模式弊端:前后端不分离,后端压力过大MVVM模式优点:前后端分离弊端:1、浏览器(客户端)压力过大,浏览器CPU占用过大2、不利于SEO,页面都是由JS生成,SEO检测的是HTML3、直接暴露接口,存在安全风险Node中间层模式优点:既满足了前后端分离,也减轻了客户端压力,还有利于SEO技术选型Node框架选型Express、Koa(简化的express)、egg(企业级node开发框架,适用于全站项目原创 2020-06-25 18:18:21 · 522 阅读 · 0 评论 -
容联云通讯短信平台JS调用
容联云通讯官网1.注册注册成功之后,会赠送8元进行测试记录账号信息用于代码中配置添加测试号码用于测试2.接口配置(js)var md5 = require('blueimp-md5')var moment = require('moment')var Base64 = require('js-base64').Base64;var request = require('requ...原创 2019-04-01 16:34:32 · 809 阅读 · 0 评论 -
WebSocket实现简单聊天室
看了之前的文章,想必大家对WebSocket的原理已经有了一个深入的理解,这一篇文章我们来看一下具体该如何去使用它。这里,我用nodejs-websocket实现一个简单的多人聊天室,从这个小案例中来学会使用WebSocket。nodejs-websocket用法参见官方api:https://www.npmjs.com/package/nodejs-websocket服务器端://安装...原创 2018-11-23 14:15:17 · 836 阅读 · 0 评论 -
Socket.IO实现简单聊天室
Socket.IO介绍官方文档https://socket.io/docs/Socket.io是一个跨浏览器支持WebSocket的实时通讯的JS。它不仅简化了接口,使得操作更容易,而且对于那些不支持WebSocket的浏览器,会自动降为Ajax连接,最大限度地保证了兼容性。它的目标是统一通信机制,使得所有浏览器和移动设备都可以进行实时通信。Socket.io实际上是WebSocket的父...原创 2018-11-23 16:17:46 · 814 阅读 · 0 评论 -
koa使用方法汇总
koa方法汇总学习,用于后续参考。目录展示项目介绍module:存放自己封装的方法routes:路由模块static:存放所需静态文件views:存放模板视图app:入口文件方法展示app.js//引入koa模块var Koa = require('koa');//引入path以便获取路径var path = require('path');//引入实例化路由 不同...原创 2018-11-21 11:32:53 · 1385 阅读 · 0 评论 -
Koa脚手架创建项目
1、全局安装npm install koa-generator -g2、创建项目koa koa_cli3、安装依赖cd koa_clinpm install4、启动项目npm start创建完成之后,项目结构如下所示:项目介绍:bin/www为配置文件,入口node_modules为所依赖文件public为所需静态文件routes为路由文件view为前端模板文件a...原创 2018-11-21 09:44:21 · 953 阅读 · 0 评论 -
Node定时器、事件循环及不同任务执行顺序
//次轮循环执行setTimeout(() => console.log(1));setImmediate(() => console.log(2));//本轮循环执行process.nextTick(() => console.log(3));Promise.resolve().then(() => console.log(4));(() => cons...原创 2018-10-31 16:35:09 · 250 阅读 · 0 评论 -
Node.js介绍
身为一个前端人,想要去了解后端的编程思维,Node.js是最适合的一门语言。不言其他,只说JavaScript。这是每一个前端人都必须掌握的,而node.js也是基于JS,这使得前端人去学习node的门槛会低很多。Node.js是什么?Node.js基于Google的V8引擎,得以让JavaScript运行在服务器端,快速构建可扩展的网络应用程序的平台。 Node.js使用事件驱动,非阻...原创 2018-09-10 15:18:24 · 1251 阅读 · 0 评论 -
Node.js之Express4.x
安装1.官网下载安装node.js(不提) 2.express4.x安装$ npm install -g express-generator 注意:4.x把命令行工具分离出来了,express-generator必须先全局安装,如果需要安装指定版本: npm install -g express-generator@3.5.0$ npm install express --sa...原创 2018-09-10 17:12:29 · 504 阅读 · 0 评论 -
利用node.js创建静态web服务器
//引入http服务var http = require('http');//引入fs模块var fs = require('fs');//引入url模块var url = require('url');//引入path模块var path = require('path');//引入自定义模块var mime = require('./static/module/getmime...原创 2018-09-25 11:47:22 · 145 阅读 · 0 评论 -
如何获取node.js异步事件中的数据
node.js中的事件大都是异步事件,如何从node.js异步事件中去拿值呢?var fs = require('fs');console.log(1)/**1.直接获取function getData(){ fs.readFile('aaa.txt',(err,data) => { //异步事件 return data; })}//console.log(getDat...原创 2018-10-08 09:56:34 · 563 阅读 · 0 评论 -
模拟express封装node路由
express.jsvar url = require('url');//封装方法res.send()function resSend(res){ res.send = function(data){ res.writeHead(200,{"Content-Type":"text/html;charset='utf-8'"}); res.end(data); }}...原创 2018-10-15 10:22:07 · 185 阅读 · 0 评论 -
node.js连接mongoDB数据库
前面已经讲了mongoDB数据库的安装和使用,今天来研究一下node.js中如何连接和使用mongoDB数据库。一、配置mongose增加mongose类库npm install mongoose二、利用mongoose连接mongoDB数据库//引入模块var mongoose = require('mongoose');//连接数据库mongoose.connect('mong...原创 2018-10-09 17:04:37 · 5146 阅读 · 4 评论 -
Express中的Cookie使用
Cookie介绍cookie 是存储于用户设备中的变量。可以让我们用同一个浏览器访问同一个域名的时候共享数据。HTTP 是无状态协议。当你浏览了一个页面,然后转到同一个网站的另一个页面,服务器无法认识到这是同一个浏览器在访问同一个网站。每一次的访问,都是没有任何关系的。Cookie 是一个简单到爆的想法:当访问一个页面的时候,服务器在下行 HTTP 报文中,命令浏览器存储一个字符串; 浏览...原创 2018-10-31 14:05:16 · 685 阅读 · 0 评论 -
如何自动重启node.js
大家都有过这个体验,在开发Nodejs程序的时候,无论修改了哪一部分代码,都需要重启服务才能生效。这是因为Nodejs只有在第一次引用到某部分的时候才会去解析脚本,以后都会直接访问内存,避免重复载入。这样做很大程度上提高了效率,但是却不利于我们进行程序调试,很繁琐。下面提供了一种解决方案,希望对大家有所帮助。 使用supervisor ,监视代码的改动,自动重启Node.js 安装super...原创 2018-09-10 10:40:08 · 1010 阅读 · 0 评论