Session代表服务器和客户端一次会话的过程。
在计算机科学领域来说,尤其是在网络领域,会话(session)是一种持久网络协议,在用户(或用户代理)端和服务器端之间创建关联,从而起到交换数据包的作用机制,session在网络协议(例如telnet或FTP)中是非常重要的部分。
session 原理示意图
如何在express中使用 session
我们可以使用 express-session 中间件进行 session操作
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
- 优点
- 可以是任何格式
- 存储量理论上是无限的
- 数据难以被获取
- 数据难以篡改
- 不易丢失
- 缺点
- 占用服务器资源