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

  • 优点
    • 可以是任何格式
    • 存储量理论上是无限的
    • 数据难以被获取
    • 数据难以篡改
    • 不易丢失
  • 缺点
    • 占用服务器资源
相关推荐
阿凡达蘑菇灯几秒前
langgraph---条件边
开发语言·前端·javascript
San301 分钟前
深入理解浏览器渲染流程:从HTML/CSS到像素的奇妙旅程
javascript·css·html
拖拉斯旋风2 分钟前
深入理解 JavaScript 执行机制之V8引擎:从编译到执行的完整生命周期
javascript·面试
Han.miracle10 分钟前
Java的多线程——多线程(3)线程安全
java·开发语言·jvm·学习·安全·线程·多线程
RAY_CHEN.13 分钟前
vue递归组件-笔记
前端·javascript·vue.js
周杰伦_Jay30 分钟前
【主流开发语言深度对比】Python/Go/Java/JS/Rust/C++评测
开发语言·python·golang
ldmd28436 分钟前
Go语言实战:入门篇-5:函数、服务接口和Swagger UI
开发语言·后端·golang
光子物联单片机1 小时前
C语言基础开发入门系列(八)C语言指针的理解与实战
c语言·开发语言·stm32·单片机·mcu
是苏浙1 小时前
零基础入门C语言之文件操作
c语言·开发语言
盈电智控1 小时前
体力劳动反而更难被AI取代?物联网科技如何守护最后的劳动阵地
开发语言·人工智能·python