![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
node从入门到放弃
文章平均质量分 88
这是个人演示项目后端部分的介绍博客。后端使用koa2框架开发,对基本的swagger、日志、数据库模型等功能经行详细介绍。
写的不好,请多指教!
高素质车间工人
一个前端页面仔,努力地内卷中,以博客的形式让自己坚持不断学习提高。
你的一键三连是我坚持的重要动力!
展开
-
koa2 请求转发实现
最近在学习vue3+nestjs,打算用这两个做一个博客(页面仔都喜欢做博客网站,我也一样!!)。为了节约时间,提高效率,博客网站的管理后台、数据统计页面我打算用之前做的基于vue2+kao2的项目。那么这样就出现了一个问题:后台管理页面有两个服务,一个是之前做好的基于koa2的,一个是基于新东西nestjs的。这样就需要做请求服务的代理将不同的服务代理到对应的服务器上。对于代理,有很多办法,前端配置代理,后端请求转发、网关处理等等。最后我选择了后端请求转发来处理。这样对原先的代码改动最少。代码直接原创 2021-05-24 21:10:48 · 2713 阅读 · 1 评论 -
node从入门到放弃系列之(12)丝滑的操作数据库及表模型
Sequelize 是一个基于 promise 的 Node.js ORM, 目前支持 Postgres, MySQL, MariaDB, SQLite 以及 Microsoft SQL Server. 它具有强大的事务支持, 关联关系, 预读和延迟加载,读取复制等功能。sequelize-auto是一个帮助我们快速生成表结构的工具。如何结合这两个模块,让我们更丝滑的操作数据库及表模型呢?原创 2021-04-27 10:53:18 · 894 阅读 · 1 评论 -
node从入门到放弃系列之(11)用优雅的代码武装我们的koa2项目
所周知,koa2是基于nodejs的一款非常轻量级的服务端框架,其简单易上手的特性更是大大节省了前端人员开发服务端api的成本。尽管许多功能能够实现,但是作为一个有素养的开发人员,代码的层次性、后期可维护性都是需要考虑周到的。实话说,按照koa官方文档来照葫芦画瓢,我们的代码是写不漂亮的。这里需要我们在编码之前有一个非常清晰的认识:我们的代码如何组织?如何分层?如何复用?原创 2021-03-17 14:15:39 · 444 阅读 · 0 评论 -
node从入门到放弃系列之(10)图形验证功能
原生的人机验证功能,使用canvas模块,实现滑动验证、点击验证的底图生成,实现node的专属图形验证原创 2020-12-25 16:03:03 · 1085 阅读 · 0 评论 -
js代码片段纪要
目录node1. base64数据转图片2. 制作透明背景图片3. 滑块拼图背景图和滑块图制作node1. base64数据转图片const fs = require('fs');const path = require('path');const pwdPath = path.resolve(__dirname); // 当前文件路径const imgPath = pwdPath + 'trans.png'; //从app.js级开始找--在我的项目工程里是这样的//去掉图片base64码前原创 2020-11-27 16:54:29 · 238 阅读 · 0 评论 -
node从入门到放弃系列之(9)log4js日志管理
每个后端服务,都必须有日志系统,最有名的就是Log4j了。日志存在的意义:问题追踪:通过日志不仅仅包括我们程序的一些bug,也可以在安装配置时,通过日志可以发现问题。状态监控:通过实时分析日志,可以监控系统的运行状态,做到早发现问题、早处理问题。安全审计:审计主要体现在安全上,通过对日志进行分析,可以发现是否存在非授权的操作。那在koa2里如何实现log4j日志系统呢?原创 2020-10-17 10:51:33 · 498 阅读 · 0 评论 -
node从入门到放弃系列之(8)koa2 swaggerUI的使用
相信无论是前端还是后端开发,都或多或少地被接口文档折磨过。前端经常抱怨后端给的接口文档与实际情况不一致。后端又觉得编写及维护接口文档会耗费不少精力,经常来不及更新。其实无论是前端调用后端,还是后端调用后端,都期望有一个好的接口文档。但是这个接口文档对于程序员来说,就跟注释一样,经常会抱怨别人写的代码没有写注释,然而自己写起代码起来,最讨厌的,也是写注释。所以仅仅只通过强制来规范大家是不够的,随着时间推移,版本迭代,接口文档往往很容易就跟不上代码了。此时swagger工具就能帮你解决这个烦恼原创 2020-08-06 14:27:52 · 3452 阅读 · 0 评论 -
node从入门到放弃系列之(7)token鉴权及refreshToken原理介绍
基于 Token 的身份验证是无状态的,我们不用将用户信息存在服务器或 Session 中。这种概念解决了在服务端存储信息时的许多问题。没有 session 信息意味着你的程序可以根据需要去增减机器,而不用去担心用户是否登录和已经登录到了哪里。既然是token,那么肯定有它的过期时间,没有一个token是永久的,永久的token就相当于一串永久的密码,是不安全的。那么token过期时,前后端该怎么处理呢?接下来我就回答下token鉴权及refreshToken原理原创 2020-07-17 14:52:47 · 1875 阅读 · 0 评论 -
node从入门到放弃系列之(6)RSA前端加密node-rsa JSEncrypt的使用
在前后端交互过程中,总会有一些需要加密传输的数据,使用最广泛的就是非对称加密,安全可靠。在nodejs中也有相对应的模块node-rsa JSEncrypt。本文让我们来了解下它们是如何实现数据的加密?原创 2020-06-19 11:25:43 · 1896 阅读 · 0 评论 -
node从入门到放弃系列之(5)mysql同步操作及登录接口demo
后端服务不可能离开数据库的操作,接下来就以开发一个简易的登录接口demo来实现对数据库的操作。demo代码=》koa2-server项目代码连接mysql数据库const mq = require('mysql2');const mysql = mq.createConnection({ host: 'localhost', user: 'root', password: 'password', database: 'koa2_server', charset: 'utf原创 2020-06-17 16:46:21 · 436 阅读 · 3 评论 -
node从入门到放弃系列之(4)koa2项目创建及初步开发
我创建是koa2的项目,因为网上一搜全是koa2的资料,1的资料不好找,会增加学习的成本,降低学习的效率。创建命令:koa koa2-server。demo代码=》koa2-server项目代码最原始的目录如下:(借的别人的图)启动起来是这个的然后添加了prettierrc、eslint等配置文件,形成最终的目录如下:koa2-server├─.editorconfig├─.eslintrc.js├─.prettierrc├─app.js├─mysql.js├─package-loc原创 2020-06-17 15:17:52 · 535 阅读 · 0 评论 -
node从入门到放弃系列之(3)服务项目重构及跳车koa
在大多数的服务里都用到token来验证状态了解一点node基础的都知道experss是较早的node框架,现在主流的都是主流的node框架有express、koa、sails、loopback、thinkjs、egg,具体的介绍=》关于node框架的选择 这次我打算基于koa来开发后端服务,就把之前写好的express框架的demo删了(还好刚开始,不多)。主要也就改了index.js里的内容var koa = require('koa')// 注意require('koa-router')返回的是原创 2020-06-11 17:33:40 · 356 阅读 · 0 评论 -
node从入门到放弃系列之(2)创建vue工程 连接后端服务
前端项目代码-》源码创建vue工程这里就不说了,自行百度。我这边参考的是vue-element-admin的目录结构风格前端项目目录结构├─.babelrc ├─.editorconfig ├─.eslintignore ├─.eslintrc.js ├─.gitignore ├─.postcssrc.js ├─index.html ├─package.json├─README.md├─vue.config.js├─test| ├─unit| |原创 2020-06-10 19:23:50 · 353 阅读 · 0 评论 -
node从入门到放弃系列之(1)node后端服务项目搭建
最近不知道怎么了就是特别想学node,想写个接口舒服舒服。那么接下来借着这股劲学习node的同时一起同步记录下这个过程,希望对大家能有帮助,同时当作一个记录。学习node首先我想到的就是创建一个node的工程项目,在网上也找不到一家统一的项目目录结构,也没有专门的命令来生成项目,那我就按着前端项目做了一个格式生成了一个:node学习项目├─index.js // 项目入口├─mysql.js // 数据库配置文件├─package.json├─src // 服务开发目录| └index.js原创 2020-06-10 14:49:40 · 1745 阅读 · 1 评论 -
nodejs学习之热部署hotnode报错
跟着网上的教程,学着怎么用node写接口。其他的步骤网上一大堆自己去搜,随便一个都能用。但是我到热部署hotnode的时候卡住了,他报错了:TypeError: util.print is not a function,就像这样↓第一反应没安装咯,再来,还这样,那就不是我得问题了,百度了下有两篇,估计同一个作者写的,附上大佬原文地址–>,照着他说的,都是打印找到这文件下的112行修改为co...原创 2020-03-26 21:01:25 · 842 阅读 · 1 评论