node
文章平均质量分 64
node
六卿
冰冻三尺非一日之寒,愿你事事看开,唯独对美好保持执念。
展开
-
node反向代理,解决跨域(http-proxy-middleware)
node反向代理,解决跨域原创 2022-01-24 11:19:14 · 1611 阅读 · 2 评论 -
node事件循环中事件执行顺序
六个阶段首先外部数据输入–》轮询阶段–》检查阶段–》关闭事件回调阶段–》定时器阶段–》I/O回调阶段–》闲置阶段–》轮询阶段》…开始循环timers阶段:执行timer(setTimeout,setInterval)的回调;I/O callbacks阶段:处理一些上一轮循环中少数未执行的I/O回调idle,prepare 阶段:仅node内部使用;poll阶段:获取新的I/O时间,适当的条件下node将阻塞在这里;check阶段:执行setImmediate()的回调;close cal原创 2021-08-29 17:45:57 · 1670 阅读 · 17 评论 -
五子棋小游戏(JS+Node+Websocket)可分房间对战
主要通过js、canvas、node、websocket来实现五子棋游戏。tip:如果你想清楚的了解怎么实现,请一步步看思路流程,文章最后有项目的gitee地址、对应B站视频,可直接食用。原创 2021-08-18 09:50:39 · 8352 阅读 · 15 评论 -
node静态文件加与不加虚拟路径
首先,我们public文件下一会存储我们的一些静态文件,比如前端上传的图片或者文件:首先启动服务:我们使用3003端口;1:我们不加虚拟前缀:下方这个配置app.use(express.static(path.join(__dirname, 'public')));我们可以直接使用http://localhost:3003/tcs.htmlhttp://localhost:3003/images/0dab9cd20db721c983870aee0724f86crigght.jpg原创 2021-08-04 09:03:54 · 526 阅读 · 4 评论 -
node中循环异步的问题[‘解决方案‘]_源于map循环和for循环对异步事件配合async、await的支持
首县,我先说一下我这个虚拟的需求,我从数据库中查找所有用户的信息,包括省市县,但是我存储的时候是以省码、市码、县码code的形式来存储到数据库的,所有我取出来的时候还需要去数据库省市县表中查找对应的name,所有产生了这个问题。刚开始的思路很直接,很明确,就是找到所有人数据之后,进行循环,插入新属性,返回数据给前端。//所有 user 用户信息router.get('/queryAllUserInfo', async function (req, res, next) { let data.原创 2021-07-15 13:32:37 · 731 阅读 · 15 评论 -
node使用token来实现前端验证码和登录功能详细流程[供参考]=‘很值得‘
前两天使用cookie和session实现了这个流程,后来又添加了redis缓存,能在重起服务的时候保持session信息不丢失,实现持久化,但是每次都需要客户端和服务端的信息各自存储来尽进行比较,http请求是无状态的,所有我们可以模仿jwt || json web token 来实现整个流程我们。我们不再需要cookie和session这两个中间件来加持,所有我们规定:1.在验证码的时候发送前端一个token,用来标识验证码2.在前端用户登录的时候需要带上前一个token,然后对比验证码,账号.原创 2021-07-14 14:37:38 · 1493 阅读 · 0 评论 -
node接收前端上传的图片,单文件、多文件同name、多文件不同name
使用模块:multernpm i multer使用var multer = require('multer')// 指定上传的文件路径 //这里是当前文件平级的public/imagesvar upload = multer({ dest: path.join(__dirname, 'public', 'images') }); 路由接收://提交用户照片router.post('/postPto', upload.single('files'), (req, res) =>原创 2021-07-13 17:50:50 · 2661 阅读 · 2 评论 -
node中session持久化问题解决
session是node服务端存储的缓存,但是在重启项目后,我们的缓存会丢失,这样前端过来的标识比如cookie我们就比配不上了,我们想要达到前端登陆后不掉线的效果。为了解决这个问题,我们使用redis来解决。首先我们可以安装一下redis安装安装redis流程按照菜鸟教程的流程安装上即可。出现这个即可,表示安装成功。下面配置node,首先安装两个npm 包npm install redis connect-redis --save//引用sessionvar session = req原创 2021-07-13 10:03:24 · 478 阅读 · 1 评论 -
node登陆接口权限配置cookie-parser、express-session
主要核心:1.express-session2.cookie-parser3.node自定义中间件安装第三方插件npm i express-session cookie-parser我先描述一下我自己的需求逻辑,首先我在登录页面的时候就链接了一个验证码的接口,获取验证码:前端代码: getCaptchaCode(){ axios.get('/getCaptchaCode').then(res=>{ let getCaptchaCo原创 2021-07-12 16:52:33 · 655 阅读 · 11 评论 -
Node服务连接Mysql数据库
新建一个express项目;express myNodeDome进入文件夹cd myNodeDome下载依赖npm i首先下载mysql包npm i mysql新建Db.js//引入mysql包const mysql = require('mysql')//链接配置var connection = mysql.createConnection({ host: 'localhost', //ip user: 'root', //用户名 password原创 2021-07-07 10:11:16 · 750 阅读 · 4 评论 -
研究Promise心得总结与思路总结
首先promise 在new的时候会传入一个函数,函数有两个参数,分别是以函数调用的形式返回成功结果和失败结果,在promise中,进入constructor会被立即执行 // executor/执行器 是传进 Promise中的回调函数 constructor(executor) { // 这个回调函数会被立即执行,判断是否应该对状态进行更改 executor(this.resolve, this.reject); }相当于我们传入的两个参数,变成了两个函数,当我门执行的原创 2021-07-06 11:17:13 · 446 阅读 · 7 评论 -
Vue、ElementUI配合Node、multiparty模块实现图片上传并反显_小demo
我们先看一下效果图首先,我利用了Element的一个upload组件,我们可以直接使用它。html: <!-- 上传图片 --> <el-upload <!-- 文件状态改变时的钩子,添加文件、上传成功和上传失败时都会被调用 --> :on-change="picChange" <!-- 是否在选取文件后立即进行上传--> :auto-upload="false" action="#"原创 2021-04-13 10:54:12 · 1243 阅读 · 13 评论 -
vue配合axios连接express搭建的node服务器接口_简单案例
首先,我们先搭建node服务器我们需要使用express这个node搭建服务的框架,当然也可以使用其他的下载全局express和express-generator这两个模块依赖包npm i -g express express-generator在文件夹在我们创建自己的express文件夹,并打开cmd执行命令express --view=ejs mynodeExpressmynodeExpress 是我们的node项目文件名按照提示进入mynodeExpress文件夹下载依赖包原创 2021-04-04 18:18:43 · 2296 阅读 · 2 评论 -
json-server的简单使用
首先,我们需要安装node和配置node环境,…略过。新建文件夹,打开cmd,执行如下命令npm i json-server //或者npm i json-server -g//安装到全局 在任意文件夹下可以使用如果是将json-server下载到当前文件夹下 我们还需要一个步骤才能下载json-servernpm init //会生成package.json文件 然后再npm i json-server我们还需要一个json文件,因为我们是要mock一个json数据,dome01.j原创 2021-04-03 15:26:57 · 556 阅读 · 1 评论 -
js之Promise异步操作管理者
promise1.处理异步操作,避免回调地狱(大量的回调函数调用),是异步编程的一种解决方案,比传统的解决方案——回调函数和事件——更合理和更强大。2.ES6的Promise是一个构造函数, 用来生成Promise实例, Promise实例是异步操作管理者。3.Promise代表了未来某个将要发生的事件(通常是一个异步操作) 有了Promise对象, 可以将异步操作以同步的流程表达出来, 避免了层层嵌套的回调函数(俗称’回调地狱’)。4.Promise为了取代回调函数。Promise一共有3个状态原创 2020-09-29 14:21:00 · 290 阅读 · 4 评论 -
Node中间件
中间件node是事件驱动,非阻塞的,个人理解的node就是配置一个http网页服务和各种中间件配合数据库完成了对前台请求的数据进行响应,node本身是一个环境也是一个软件,里面可以写大量的js逻辑代码,对数据库查询的数据进行修改,最终把数据返回出去。其中比较重要的中间件(有一些是内置的)包括: url 一般用于提取路径中的参数 path 一般用于处理文件路径和文件夹路径的 events 对于事件操作 fs 对文件或者文件夹进行相关操原创 2020-09-22 08:39:07 · 871 阅读 · 0 评论