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

  • 优点
    • 可以是任何格式
    • 存储量理论上是无限的
    • 数据难以被获取
    • 数据难以篡改
    • 不易丢失
  • 缺点
    • 占用服务器资源
相关推荐
代码不加糖14 小时前
js中不会冒泡的事件有哪些?
前端·javascript·vue.js
华如锦14 小时前
面了很多 Java转AI Agent方向,一些面试题总结
java·开发语言·人工智能·python·ai
huangdong_14 小时前
电商商品SKU图自动分类技术实现:从DOM解析到智能归档
开发语言
dog25014 小时前
网络长尾延时的重尾本质
开发语言·网络·php
懂懂tty14 小时前
Vue2与Vue3之间API差异
前端·javascript·vue.js
Dxy123931021614 小时前
Python线程锁:为什么多线程会“打架“,以及怎么解决
开发语言·前端·python
guygg8814 小时前
人行走作用下板的振动响应 MATLAB 仿真
开发语言·matlab
小二·15 小时前
Next.js 15 全栈开发实战
开发语言·javascript·ecmascript
fox_lht15 小时前
15.3.改进我们之前的输入、输出项目
开发语言·后端·学习·rust
java1234_小锋15 小时前
LangChain4j 开发Java Agent智能体- 多模态支持
java·开发语言·langchain4j