原生Node.js开发Web Server博客项目学习笔记
文章平均质量分 76
利用原生node技术开发server博客项目,目的在于了解框架底层原理,后期在使用koa2及express重构项目
海面有风
梦想很大,仍需努力
展开
-
使用Koa2重构博客项目
不使用框架完成博客项目(原生nodejs) 一、安装Koa npm install koa-generator -g koa2 blog-koa2 cd blog-koa2 npm install npm i cross-env --save-dev 启动项目npm run dev 代码复用 二、登录验证 下载插件 koa-generic-session、koa-redis、redis npm i koa-generic-session koa-redis redis --save 配置环境(a原创 2021-03-15 09:10:10 · 335 阅读 · 2 评论 -
项目涉及到的知识点及项目流程图
一、 最终项目目录 二、功能模块 五部分: 处理http接口 连接数据库(mysql redis) 实现登录 安全(xss攻击,sql注入,密码加密) 日志 三、流程图 四、核心知识点 http,nodejs处理http、处理路由、mysql cookie,session,redis,nginx反向代理 sql注入,xss攻击,加密 日志,stream,contrab,readline ...原创 2021-03-15 08:07:29 · 259 阅读 · 0 评论 -
使用express重构博客项目
一、安装express npm install express-generator -g --registry=https://registry.npm.taobao.org express express-test cd express-test npm install --registry=https://registry.npm.taobao.org npm start (启动项目) 访问 localhost:3000 (bin/www.js) 二、express的入口文件 var c原创 2021-03-15 08:05:23 · 247 阅读 · 2 评论 -
第六天:对项目后端日志存储
对项目后端进行写日志 案例一:文件操作(原生nodejs) (1)项目目录: (2)读取文件 const fs = require('fs') const path = require('path') //读取文件内容 fs.readFile(fileName, (err,data) => { if (err) { console.error(err) return } //data是二进制1类型,需要转化为字符串 console原创 2021-03-10 10:17:49 · 407 阅读 · 2 评论 -
第五天:在博客路由中使用登录验证,配置 nginx解决前后端跨域
上一篇 在blog模块中对用户是否已经登录成功进行判断 对博客进行操作前都必须验证用户是否已经登录成功 //router/blog.js 全局环境 //统一的登录验证函数 const logincheck = (req) { if (!req.session.username) { return Promise.resolve( new ErrorModel('尚为登录') ) } } //新增博客,删除博客,更新博客路由中调原创 2021-03-10 10:16:01 · 240 阅读 · 0 评论 -
第四天:使用 session cookie redis完善登录验证及登录路由
上一篇 一、登录功能(跟上一篇博客模块对接数据库方法类似) //controller/user.js const loginCheck = (username,password) => { //先用假数据 // if (username === 'zhangsan' && password === '123') { // return true // } // return false let sql = `select username, realn原创 2021-03-06 14:32:08 · 384 阅读 · 0 评论 -
第三天:完善数据层(controller)真正对接数据库Mysql
上一篇 接着上一篇完善数据库 一、建表 user表 column datatype pk主建 nn不为空 Al自动增加 Default id int Y Y Y username varchar(20) Y password varchar(20) Y realname varchar(10) Y blog表 column datatype pk主建 nn不为空 Al自动增加 Default id int Y Y Y titl原创 2021-03-02 20:28:48 · 932 阅读 · 1 评论 -
第二天:继续完善路由层(router)及数据层(controller)
上一篇 接着上一篇完善路由 一、创建数据模型 作用:统一规定返回数据到客户端时,数据的格式保存一致 在src文件下创建model文件夹并在其目录下创建resModel.js文件 class BaseModel { /* data是返回到客户端的数据(对象类型),message是错误信息(字符串类型) 如果errno=0,请求成功 通过data来获取数据 如果errno=-1,请求失败 通过message来获取错误的具体原因 */ construc原创 2021-02-27 14:32:29 · 1475 阅读 · 2 评论 -
第一天:搭建环境和初始化路由
环境搭建 创建项目目录 注意事项: 1)bin目录下的www.js应该对应package.json中的原创 2021-02-24 13:53:57 · 276 阅读 · 0 评论