位置: IT常识 - 正文

【Node.js实战】一文带你开发博客项目之登录(前置知识)(node js教程)

编辑:rootadmin
【Node.js实战】一文带你开发博客项目之登录(前置知识)

推荐整理分享【Node.js实战】一文带你开发博客项目之登录(前置知识)(node js教程),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:node.js in action,node js教程,node js教程,node js教程,node.js gui,node.js入门教程,node-js,node.js 10实战,内容如对您有帮助,希望把文章链接给更多的朋友!

个人简介

👀个人主页: 前端杂货铺 🙋‍♂️学习方向: 主攻前端方向,也会涉及到服务端 📃个人状态: 在校大学生一枚,已拿多个前端 offer(秋招) 🚀未来打算: 为中国的工业软件事业效力n年 🥇推荐学习:🍍前端面试宝典 🍉Vue2 🍋Vue3 🍓Vue2&Vue3项目实战 🥝Node.js 🌕个人推广:每篇文章最下方都有加入方式,旨在交流学习&资源分享,快加入进来吧

Node.js系列文章目录内容参考链接Node.js(一)初识 Node.jsNode.js(二)Node.js——开发博客项目之接口Node.js(三)Node.js——一文带你开发博客项目(使用假数据处理)Node.js(四)Node.js——开发博客项目之MySQL基础Node.js(五)Node.js——开发博客项目之API对接MySQL文章目录Node.js系列文章目录一、前言二、cookie、session、redis1、cookie2、session3、redis4、为什么 session 适合用 redis?5、为何网站数据不适合用 redis?三、安装 redis四、nodejs 连接 redis 的测试五、写在最后一、前言

登录功能一般都是有 约定俗成的方法 的。

在这里我们使用 session 的方式 去实现登录功能!

二、cookie、session、redis1、cookie存储在浏览器的一段字符串(最大 4kb)跨域不共享格式如 k1=v1;k2=v2;k3=v3; 因此可以存储结构化数据每次发送 http 请求,会将请求域的 cookie 一起发送给 serverserver 可以修改 cookie 并返回给浏览器浏览器中也可以通过 JavaScript 修改 cookie(有限制)2、session单独使用 cookie 会暴露 username,很危险如何解决:cookie 中存储 userid,server 端对应 username解决方案:session,即 server 端存储用户信息

3、redisweb server 最常用的缓存数据库,数据存放在内存中相比于 mysql,访问速度快(内存和硬盘不是一个数量级的)但成本更高,可存储的数据量更小(内存的硬伤)将 web server 和 redis 拆分为两个单独的服务双方都是独立的,都是可扩展的(例如都扩展成集群)(包括 mysql,也是一个单独的服务,也可扩展)

4、为什么 session 适合用 redis?session 访问频繁,对性能要求极高session 可不考虑断电丢失数据的问题(内存的硬伤)session 数据量不会很大(相对于 mysql 中存储的数据)5、为何网站数据不适合用 redis?操作频率不是太高(相比于 session 操作)断电不能丢失,必须保留数据量太大,内存成本太高三、安装 redis

安装 redis 参考链接

有以下内容输出,即安装成功:

【Node.js实战】一文带你开发博客项目之登录(前置知识)(node js教程)

四、nodejs 连接 redis 的测试

创建 redis-test 文件夹,控制台输入 npm init -y 进行初始化,并创建 index.js 文件

安装 redis

npm i redis

index.js 文件

导入 redis 模块创建客户端并连接(端口号,服务端地址)退出const redis = require('redis')!(async function () { // 创建客户端 const redisClient = redis.createClient(6379, '127.0.0.1') // 连接 await redisClient.connect() .then(() => console.log('redis connect success!')) .catch(console.error) // set await redisClient.set('myname', 'zahuopu') // get const myname = await redisClient.get('myname') console.log('myname', myname) // 退出 redisClient.quit()})()

开启 redis 服务,终端运行文件:

五、写在最后

至此,我们明白了为什么要把 session 存入 redis,并对 redis 做了连接的测试。继续跟进学习吧!

后续会对该项目进行多次重构【多种框架(express,koa)和数据库(mysql,sequelize,mongodb)】

如果你需要该项目的 源码,请通过本篇文章最下面的方式 加入 进来~~

本文链接地址:https://www.jiuchutong.com/zhishi/299831.html 转载请保留说明!

上一篇:HTML5+CSS3模拟实现《亮剑》平安县城一役精彩微信群聊-谁开的炮?(html5/css3)

下一篇:【Flink】详解Flink的八种分区(flink从入门到实战)

  • vivox70pro+怎么关闭自动更新(vivox70pro+怎么关电视)

    vivox70pro+怎么关闭自动更新(vivox70pro+怎么关电视)

  • iphone自动删除app怎么关闭(iphone自动删除照片怎么回事情)

    iphone自动删除app怎么关闭(iphone自动删除照片怎么回事情)

  • oppo手机怎么设置屏幕锁(oppo手机怎么设置锁屏密码)

    oppo手机怎么设置屏幕锁(oppo手机怎么设置锁屏密码)

  • 华为手机怎么截屏视频(华为手机怎么截取视频的一部分)

    华为手机怎么截屏视频(华为手机怎么截取视频的一部分)

  • ipadair是几代(ipadAir是几代)

    ipadair是几代(ipadAir是几代)

  • g502hero和g502主宰者区别(g502hero和g502hero主宰者区别)

    g502hero和g502主宰者区别(g502hero和g502hero主宰者区别)

  • 微信被加入黑名单还能添加对方吗(微信被加入黑名单后加好友有什么提示)

    微信被加入黑名单还能添加对方吗(微信被加入黑名单后加好友有什么提示)

  • a1700是苹果什么型号(苹果a1700是苹果几多少钱)

    a1700是苹果什么型号(苹果a1700是苹果几多少钱)

  • 信息旁边有个月亮是什么意思(信息旁边有个月亮)

    信息旁边有个月亮是什么意思(信息旁边有个月亮)

  • 为什么新买的耳机插在手机上没有用(为什么新买的耳机只有一边有声音)

    为什么新买的耳机插在手机上没有用(为什么新买的耳机只有一边有声音)

  • 手机拍照hdr是什么功能(手机拍照HDR是什么模式)

    手机拍照hdr是什么功能(手机拍照HDR是什么模式)

  • iphone保修需要发票吗(iphone保修要发票么)

    iphone保修需要发票吗(iphone保修要发票么)

  • oppo没有密码怎么还原手机(oppo没有密码怎么解开手机)

    oppo没有密码怎么还原手机(oppo没有密码怎么解开手机)

  • 域名系统的缩写(域名英文缩写对应的含义)

    域名系统的缩写(域名英文缩写对应的含义)

  • 抖音怎么把通讯录关了(抖音怎么把通讯录的人拉黑)

    抖音怎么把通讯录关了(抖音怎么把通讯录的人拉黑)

  • 微信怎么用身份证实名验证(微信怎么用身份证找回账号密码)

    微信怎么用身份证实名验证(微信怎么用身份证找回账号密码)

  • 12306人证核验始终不通过怎么办(12306人证核验43003)

    12306人证核验始终不通过怎么办(12306人证核验43003)

  • soul如何查看匹配历史(soul如何查看匹配的人)

    soul如何查看匹配历史(soul如何查看匹配的人)

  • 手机视频快进怎么弄(手机视频快进怎么调正常)

    手机视频快进怎么弄(手机视频快进怎么调正常)

  • 转转如何私聊(转转如何私聊买家)

    转转如何私聊(转转如何私聊买家)

  • play商店打不开白屏(google play商店打不开)

    play商店打不开白屏(google play商店打不开)

  • Win10如何解决重启后桌面图标重新排列(win10重启按什么键重置)

    Win10如何解决重启后桌面图标重新排列(win10重启按什么键重置)

  • HTML+CSS+JS 学习笔记(一)———HTML(上)(html/css/javascript)

    HTML+CSS+JS 学习笔记(一)———HTML(上)(html/css/javascript)

  • lnstat命令  显示Linux系统的网路状态(ls -all命令)

    lnstat命令 显示Linux系统的网路状态(ls -all命令)

  • 使用curl抓取网页遇到HTTP跳转时得到多个HTTP头部的问题(curl抓包)

    使用curl抓取网页遇到HTTP跳转时得到多个HTTP头部的问题(curl抓包)

  • 一般纳税人没有开票要交税吗
  • 做电商没有进货码怎么办
  • 存货跌价准备的分录
  • 取消待摊费用科目
  • 企业所得税的研究论文范文
  • 劳务费专票需要备注吗
  • 韩国购物小票怎么看图解
  • 建设工程材料检测费
  • 企业所得税预缴计算方法
  • 固定收益款可以开增值税专票吗?
  • 退货未开发票如何做账
  • 清产核资账务处理方法
  • 往来款少付零头怎么入账
  • 软件入库会计分录
  • 上个月银行流水没有录这个月补录
  • 分公司税务是独立核算还是非独立
  • 资产负债表季度申报期末余额怎么填
  • 工程结算审计费用谁承担
  • 往来款可以作为投资款吗
  • 财务杠杆系数简单计算方法
  • 交易性金融资产公允价值变动计入
  • 个人独资企业还是个体户好
  • 挂靠车辆可以抵扣进项税么?
  • 同一控制下合并对价怎么算
  • 长期待摊费用发生当月摊还是次月摊
  • win11 老机器
  • 公户的利息收入账务处理咋处理
  • 进项票月初收到能抵上月
  • php ioc
  • wordpress 设置
  • 苹果今天推送更新内容
  • 苹果系统的声音
  • 来料加工方式中,料件和加工后成品的所有权
  • 广告行业物料
  • 发票红冲是什么意思需要给钱吗
  • php-cpp
  • 项目提成比例
  • Vue Grid Layout -️ 适用Vue.js的栅格布局系统(保姆级使用教程)
  • php追加写入
  • 非正常损失会计利润调整
  • 会计处理的正确顺序
  • 论文笔记整理软件
  • php实现四种基础方式
  • 运费已付发票未到会计分录
  • 跨境电商小规模怎么做账报税
  • python for循环遍历
  • dedecms配置
  • mysql日期和时间类型
  • 非独立核算的分公司需要独立建账吗
  • 哪些企业可以不计提盈余公积
  • access分组计数
  • mysql分片sql
  • 金税盘技术服务费怎么交费
  • 工程结算收入如何确定
  • 出口转内销怎么做
  • 应收账款期末余额为负数表示什么
  • 停产工人工资计入哪个科目
  • 未交增值税的核算方法
  • 违约金罚款计入什么科目
  • 还账准备计提方法
  • 应收账款应付账款可以抵消吗
  • 政府征税再进行补贴对消费者福利的影响
  • 微软edge浏览器在哪
  • hipo.dll是什么
  • WinXP巧用Netsh工具快速填写IP参数
  • win8设备管理器在哪里打开
  • win10系统如何关闭
  • win7激活2020
  • 红宝书csv
  • python的pip安装命令
  • nodejs使用场景
  • python signal模块
  • jQuery中的AjaxSubmit使用讲解
  • javascript操作csv
  • JavaScript replace(rgExp,fn)正则替换的用法
  • js日历插件
  • jquery编写Tab选项卡滚动导航切换特效
  • android开发电视app教程
  • js闭包的定义和用途
  • jquery删除对象
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设