![](https://img-blog.csdnimg.cn/20200930090021660.jpeg?x-oss-process=image/resize,m_fixed,h_224,w_224)
连续剧
以实战为基础,详细介绍实战中使用的技术与解决的问题,是一个很好的锻炼自己的机会。
前端发现
致力于分享前端技术文章,让前端变得容易!
展开
-
[记录五]Vue+node+koa2+mysql+nginx+redis,全栈开发小程序和管理员管理系统项目——使用swagger自动生成接口文档
因为我们是异地对接接口文档,为此有对接文档是非常必要的,经过对比我选用swagger,但是node使用swagger有很多坑(细节)需要注意,我花费了两天时间才将文档展现出来,尤其是对注释部分需要严格按照格式去写。我这里选用swagger-jsdoc和koa2-swagger-ui去实现。首先我们在routes文件夹中另起一个文件swagger.js,为什么在routes文件下呢?因为在给到别人看文档的时候你是打开127.0.0.1:300/swaggger这样的网址的,所以它相当于node的其中一个路原创 2020-09-26 09:27:06 · 3516 阅读 · 61 评论 -
[记录九]Vue+node+koa2+mysql+nginx+redis,全栈开发小程序和管理员管理系统项目——在服务器清除小程序上传的废弃图片
大家好,我是小佑@小佐,是一名页面仔工程师,我会不定时在CSDN更新我的博客,有兴趣的可以点个关注来逛逛我的主页。前言:首先,实现小程序上传与下载的逻辑我这里是这么实现的:小程序点击图片调服务器提供的api——服务器收到此请求获取图片文件的信息并读取和写入本地,比如写到项目的某个文件中去——然后在api中返回一个映射地址,此地址就是上传的图片的服务端项目的相对位置——小程序拿到地址直接显示,并在最终请求的时候已数组的形式发回给服务端——期间服务端会将小程序显示的图片地址对应的图片文件返回去。正常业务是这样原创 2020-12-08 14:47:16 · 1504 阅读 · 3 评论 -
[记录八]Vue+node+koa2+mysql+nginx+redis,全栈开发小程序和管理员管理系统项目——使用定时任务执行脚本
前言:系统的日常维护必然不能单靠人24小时守着电脑去操作系统;像数据的同步、交易流水的校验、订单号的初始值等等需要在晚上或者系统使用量最低的时候去做,避免数据的丢失。为此选好时间让系统自动在那个时间去执行脚本就显得非常重要了。本节介绍定时执行脚本。下载node-schedule依赖yarn add node-schedule导入使用//app.jsconst schedule = require('node-schedule')const script = require('./util/s原创 2020-10-08 22:40:28 · 695 阅读 · 29 评论 -
[记录七]Vue+node+koa2+mysql+nginx+redis,全栈开发小程序和管理员管理系统项目——生成请求日志
前言:日志是系统非常重要的东西,倘若生成环境中突然报错或异常,要想快速知道哪里出现了问题,最快的方式就是查看系统日志。日志不仅仅是系统异常后帮助定位错误的作用,也可以了解用户操作了什么请求,客户端ip和所在地址都是可以知道的,将用户的操作信息保存下来供系统管理员查看。下面来看看node是如何将日志信息保存下来并提供api给前端查看。日志表结构这是数据库的其中一张数据表,我将请求日志信息保存在这,方便管理员可以查看。创建生成日志的中间件//app.js// 日志app.use(async (ct原创 2020-10-08 17:04:39 · 843 阅读 · 59 评论 -
[记录六]Vue+node+koa2+mysql+nginx+redis,全栈开发小程序和管理员管理系统项目——服务端图片上传与下载
本项目需要涉及前端上传图片与显示图片,为此自己实践一下图片相关的东西,挺有意思所以就分享出来。实现思路:服务端的处理方式是将前端上传的文件保存在服务端本地,然后重命名该文件名字,再将图片在服务端的路径存入表中,前端请求图片地址的时候去服务端找出文件并返回给前端显示。在routes文件夹下新建一个common.js文件//common.js//导入所需模块const router = require('koa-router')()const api = require('../controller原创 2020-09-30 15:56:18 · 2864 阅读 · 48 评论 -
[记录四]Vue+node+koa2+mysql+nginx+redis,全栈开发小程序和管理员管理系统项目——token控制接口权限
上节我们已了解后端是如何将数据加密成token以及如何解密回用户数据的,但是并没有做到用户没有登录就不可以请求某个接口(需要用户信息的api),这样不控制的话就直接请求那就会报错了,当然为了安全是肯定要对大部分接口进行登录后才能调用的控制的。这里我采用中间件去控制。在utils文件夹下新建一个whiteList.js文件这里就写免登录的接口路由,这些是客户端不传登录态token也是可以调用成功了,后面需要不登录就能调用接口就直接在这个数组后面加多个接口的路由。在app.js中编写一个中间件,根据上面原创 2020-09-21 13:58:20 · 1982 阅读 · 45 评论 -
[记录三]Vue+node+koa2+mysql+nginx+redis,全栈开发小程序和管理员管理系统项目——token校验登录态
项目中凡事涉及到用户登录注册的都需要一个登录态来验证用户的登录状态,常用的登录台无外乎是token、session啊这些标识。这里我使用的是token字段。token一般会包含用户的个人信息,如:账号、账号id、用户名等等,更为安全的是加入一个自定义的盐(salt)一起加密,防止用户信息泄漏。下面就一起来使用一下:说到token,肯定会想到后端是怎么知道前端给我的token是不是我传给他的有效值呢?就是说后端需要有个值去跟前端传过来的token进行比较才知道合法性。所以后端在生成token的同时自己也需要原创 2020-09-21 11:35:00 · 25165 阅读 · 296 评论 -
[记录二]Vue+node+koa2+mysql+nginx+redis,全栈开发小程序和管理员管理系统项目——编写接口路由
前言写这个项目需要用到很多的依赖,node导入依赖也很方便,直接:let mysql=require('mysql')以下是我做这个项目使用到的依赖:后面都会一一来使用和介绍。编写接口编写接口之前需要配置数据库和写一个处理sql语句的方法。在controllers文件夹下新建defaultConfig.js和mysqlConfig.js。//defaultConfig.jsconst config = { // 数据库配置 database: { DATABASE:原创 2020-09-16 18:02:57 · 3213 阅读 · 60 评论 -
[记录一]Vue+node+koa2+mysql+nginx+redis,全栈开发小程序和管理员管理系统项目——前期准备
前言:最近在开发一款小程序以及配套的后台管理系统,主要是想改变一下自己对后端的无知。考虑到开发的成本就选用了适合前端人的服务端开发语言node.js。此博客会一直更新到这个项目的结束以及在生产环境上遇到的问题的总结,纯属个人的锻炼技术。开发环境前期准备:1、下载集成环境(⚠️下载它的最新版避免踩坑。)。MxSrvs集成软件:它减少了配置和需要下载多个文件的烦恼(我是这么想的) 已经自带Nginx+redis+mysql必备的开发工具了。2、安装node+koa2开发环境(具体的安装教程请百度,网原创 2020-09-16 17:24:32 · 726 阅读 · 0 评论