搜索
查看
编辑修改
首页
UNITY
NODEJS
PYTHON
AI
GIT
PHP
GO
CEF3
JAVA
HTML
CSS
搜索
IT小白
这个屌丝很懒,什么也没留下!
关注作者
热门标签
jquery
HTML
CSS
PHP
ASP
PYTHON
GO
AI
C
C++
C#
PHOTOSHOP
UNITY
iOS
android
vue
xml
爬虫
SEO
LINUX
WINDOWS
JAVA
MFC
CEF3
CAD
NODEJS
GIT
Pyppeteer
article
热门文章
1
【已解决】ModuleNotFoundError: No module named ‘torch._six‘_modulenotfounderror: no module named 'torch
2
Hadoop3:MR程序优化的相关参数介绍
3
【MySQL 数据库】JDBC 编程之 Java 连接 MySQL_java jdbc mysql
4
【QT开发笔记-基础篇】| 第四章 事件QEvent | 4.7 拖放事件_qt dragleaveevent
5
自动生成视频项目部署(MoneyPrinterTurbo)_moneyprinterturbo部署
6
Golang | Leetcode Golang题解之第42题接雨水_golang 接雨水
7
从零开始:AI模型训练入门概念
8
人工智能与语音识别:技术进步与应用前景
9
chatgpt赋能python:用Python实现高效搜索文献_python gpt 自动搜索文章
10
C++客户端Qt开发——QT初识
当前位置:
article
> 正文
[前端笔记027]Node.js之cookie和seesion_nodejs中session中的数据使用一次就会失效吗
作者:IT小白 | 2024-07-20 12:57:04
赞
踩
nodejs中session中的数据使用一次就会失效吗
前言
本笔记参考视频,李立超:
BV1qN4y1A7jM
p28-p34
cookie
由于HTTP是无状态协议,服务器无法区分请求是否发送自同一个客户端
cookie解决无状态问题,本质是一个头,服务器以响应头的形式发送给客户端,客户端收到后将其存储,并在下次向服务器发送请求时将其传回,这样就可以根据cookie来识别客户端了
发送cookie,res.cookie(“键”,“值”)
安装中间件使express可以解析cookie,中间件叫cookie-parser,然后再引入,再use,就可以解析了
cookie默认有效期为一次会话(session),会话指一次从打开到关闭浏览器的过程
可以使用配置对象,对cookie有效期进行配置res.cookie(“键”,“值”,{ 配置对象}),maxAge,用来设置cookie的有效时间,单位毫秒
发送同名cookie,并设置maxAge来覆盖老的,达成删除的目的
session
cookie服务器创建,浏览器保存,浏览器访问服务器每一次都要发送cookie,不能存放太多数据;而且在客户端容易盗用篡改;所以cookie一般不存敏感数据,存个id即可,在服务器端查询
上面的技术称为session,它是服务器中的一个对象,存储用户的数据,
每个session都有一个唯一的id,id会通过cookie发送给客户端,客户端每次访问时只需将存有id的cookie发回即可获取到用户的数据
使用:安装express-session;引入require();设为中间件use(session({secret:加密值}));不依赖cookie
session收到请求后,先检查有无cookie,有就根据cookie的id找的对象,然后设req.session=对象;无cookie,则设置cookie并设置对象,之后发给浏览器
登录时,用户信息设置到session,查看页面时判断session里有没有登录信息;完成权限验证
session在浏览器的默认有效期为一次会话
session什么时候会失效?1. 浏览器的cookie没了,2. 服务器中的session对象没了
express-session默认将session存储在内存中,所以服务器重启session会自动重置
session,持久化,写到文件或数据库中,需要安装对应的中间件,去session官网找
CSRF攻击
跨站请求伪造攻击
诱惑用户加载网站,利用用户已经登录好的cookie,发送删除请求等
大部分浏览器不会在跨域的情况下自动发送cookie,为了避免CSRF攻击
1.获取请求头的referer,判断请求来源,白名单的域名才可以访问
2.使用验证码:验证码,人脸识别,人机判断
3.尽量使用post请求,结合token使用
token,可以在创建表单时随机生成一个令牌,然后将令牌存储到session中,并通过模板发送给用户,用户提交表单时,必须将token发回,才可以进行后续的操作
声明:
本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:
https://www.wpsshop.cn/w/IT小白/article/detail/856971
推荐阅读
article
使用
Vue3
、
Node
.
js
、
MySQL
、
Electron
和
Express
实现用户登录、文章...
通过本文,我们详细介绍了如何使用
Vue3
、
Node
.
js
、
MySQL
、
Electron
和
Express
实现一个完...
赞
踩
article
Node
.
js
事件循环...
Node
.
js
是一个基于 Chrome V8 引擎的 JavaScript 运行环境,它使用非阻塞、事件驱动的 I/O...
赞
踩
article
树莓派上部署KubeEdge_execute
keadm
command
faile
d:
edge
...
v1.15.1版本在执行
keadm
join
时,检测/etc/kube
edge
文件夹是否为空,若不为空,会提醒删除/et...
赞
踩
article
基于
Node
.
js
和
ws
库搭建
WebSocket
服务
并实现消息互通的简单示例_
ws
node
js
...
服务
器会接收客户端发送的消息,并将它广播给所有其他已连接的客户端。这个HTML页面会在打开时尝试连接到
WebSocket
...
赞
踩
article
FastAPI
从入门到实战(9)——设置
Cookie
与
Header
参数
_
fastapi
cookie
...
前面一篇文章记录了前端鉴权相关的内容,这篇笔记主要记录关于请求头相关的内容,包括http的一个请求报文解析,fastap...
赞
踩
article
python
:Fastapi -
Cookie
和
Header
_
python
fastapi
co...
简单唠叨下前面唠了一些关于请求体的一些事情,这次主要唠下
cookie
和header的东西,
cookie
、header和P...
赞
踩
article
emq
tt 启动
报错
Erlang
closed
the
connection
查看状态
报错
...
造成原因:没有正常停止Emqtt,进程资源没有释放。
报错
情形,不管是stop再shart,还是直接kill再start ...
赞
踩
article
开源探索:
车道
线
检测
的
ROS
实现 ——
LaneNet
Ros
Node
...
开源探索:
车道
线
检测
的
ROS
实现 ——
LaneNet
Ros
Node
项目地址:https://gitcode.com...
赞
踩
article
java
/php/
node
.js/
python
的工程
机械设备
租赁
系统
【2024年毕设】...
本
系统
带文档lw万字以上文末可领取本课题的JAVA源码参考。
java
/php/
node
.js/
python
的工程
机械设备
...
赞
踩
article
k8s
(四)
---
node
...
node
就是节点。
k8s
(四)
---
node
四、nod...
赞
踩
article
ASM
on Non-First Node (Second or O
the
rs) Fails to ...
.............i.e.^C^C。_
prvg
-6056
prvg
-6056 AS...
赞
踩
article
Typora
+
Node
.
js
+
PicGo
+
Gitee
设置
图片
自动
上传
_
js
模拟人工自动
上传
图片
...
本文章教程是使用的
Gitee
如果想连接Github请参考这篇文章官网最后免费版(0.11.18):https://typ...
赞
踩
article
SecureCRT
日志
记录
的
7个经典
配置
记录
与14个
环境变量
(%Y-%M-%D_%H_%S_sess...
每次更换电脑、主机或者环境都需要
配置
一遍
SecureCRT
的
参数。感觉就最近十年都已经设置过上百次了。其实设置没什么特别...
赞
踩
article
ssm/
php
/node/python基于
Web
的
高校
文献检索
系统
_大学
文献检索
查新自助服务
系统
ph...
通过构建一个统一的检索平台,可以实现各类文献资源的共享和交流,促进
高校
之间的合作与交流,提高整体学术水平。随着移动互联网...
赞
踩
article
【每日
一
题
,
冲刺秋招(4)】—— 前端js考点之
cookie
、
session
和
storage
_js ...
请你描述
一
下
cookie
s
,
session
Storage 和
local
Storage 的区别?解答:
题
目二:场景需求...
赞
踩
article
Elasticsearch
中的一些重要概念:
cluster
,
node
,
index
, docu...
当我们开始使用
Elasticsearch
时,我们必须理解其中的一些重要的概念。这些概念的理解对于以后我们使用Elasti...
赞
踩
article
Node
.
js
版本管理工具(
Node
Version
Manager
)...
Node
Version
Manager
(NVM) 是一种用于管理多个主动节点.
js
版本的工具。
Node
.
js
版本管理...
赞
踩
article
Node
.js实现
文件
下载...
使用 res.writeHead 设置适当的响应头,包括 Content-Type 和 Content-Disposit...
赞
踩
article
Electron
案例
解析-获取
Chrome
、
Node
.
js
和
Electron
版本号
的
应用
案例
...
获取
Chrome
、
Node
.
js
和
Electron
版本号
的
应用
案例
的
案例
效果
Electron
案例
解析-获取 Chrom...
赞
踩
article
Node
.
js
模块系统...
Node
.
js
的模块系统是其核心特性之一,它允许开发者将代码组织成可重用的模块。这种系统促进了代码的模块化,使得大型应...
赞
踩
相关标签
node.js
mysql
electron
开发语言
边缘计算
树莓派
KubeEdge
websocket
网络协议
fastapi
python
测试开发
emqtt 启动报错 Erlang closed the
emqtt 启动报错 Node 'emq@192.168.
java
课程设计
kubernetes
容器
云原生
数据库
windows
typora
服务器
运维