NodeJs 第十五章 session

Session代表服务器和客户端一次会话的过程。

在计算机科学领域来说,尤其是在网络领域,会话(session)是一种持久网络协议,在用户(或用户代理)端和服务器端之间创建关联,从而起到交换数据包的作用机制,session在网络协议(例如telnet或FTP)中是非常重要的部分。

session 原理示意图

如何在express中使用 session

我们可以使用 express-session 中间件进行 session操作

javascript 复制代码
const express = require("express");
const app = express();
const port = 5008;

const session = require("express-session");

app.use(
  session({
    secret: "aXin_li",
    name: "sessionid",
  })
);

app.listen(port, () => {
  console.log(`server listen on ${port}`);
});

Cookie与Session的区别

Cookie

  • 优点
    • 存储在客户端,不占用服务器资源
  • 缺点
    • 只能是字符串格式
    • 存储量有限
    • 数据容易被获取
    • 数据容易被篡改
    • 容易丢失

Session

  • 优点
    • 可以是任何格式
    • 存储量理论上是无限的
    • 数据难以被获取
    • 数据难以篡改
    • 不易丢失
  • 缺点
    • 占用服务器资源
相关推荐
weixin_460783872 分钟前
Flutter解决TabBar顶部页面切换导致页面重载问题
android·javascript·flutter
天道有情战天下19 分钟前
python flask
开发语言·python·flask
逍遥客.21 分钟前
uniapp对接打印机和电子秤
javascript·vue.js·uni-app
小沙盒21 分钟前
godot在_process()函数实现非阻塞延时触发逻辑
javascript·游戏引擎·godot
Moment25 分钟前
前端 社招 面筋分享:前端两年都问些啥 ❓️❓️❓️
前端·javascript·面试
Moment26 分钟前
一坤时学习 TS 中的装饰器,让你写 NestJS 不再手软 😏😏😏
前端·javascript·面试
帅弟1501 小时前
Day4 C语言与画面显示练习
c语言·开发语言
qhs15731 小时前
Kotlin字符串操作在Android开发中的应用示例
android·开发语言·kotlin
枣仁_2 小时前
大型语言模型(LLM)深度解析
前端·javascript·面试
鱼樱前端2 小时前
36道我命由我不由天的JavaScript 基础面试题详解
前端·javascript·面试