当前位置:网站首页>Web Security (V) what is a session? Why do I need a session?
Web Security (V) what is a session? Why do I need a session?
2022-07-06 05:28:00 【jinyangjie0】
Session What is it?
Session Is the meaning of conversation , It is generally used to record user information on the server . It made up for HTTP It is the defect of stateless protocol that makes the service unable to identify users .
The typical scene is a shopping cart , When you want to add items to the cart , The system doesn't know which user operated , because HTTP Protocol is stateless . The server creates specific Session Then you can identify the user and track the user .
Why session
Talk about session Usually in web In the context of application , We know web The application is based on HTTP Agreed , and HTTP The agreement is exactly a stateless agreement . in other words , User from A The page jumps to B The page will be sent again HTTP request , When the server returns the response, it cannot know that the user is requesting B What did you do before the page .
about HTTP The cause of Statelessness , relevant RFC There is no explanation in , But contact HTTP History and application scenarios , We can infer some reasons :
1、 Design HTTP The original purpose is to provide a release and reception HTML Page method . At that time, there was no dynamic page technology , Only pure static HTML page , Therefore, there is no need for the agreement to maintain the state ;
2、 When the user receives a response , It often takes some time to read the page , Therefore, if the connection between the client and the server is maintained , Then this connection will be idle most of the time , This is an unprovoked waste of resources . therefore HTTP The original design is the default short connection , That is, the client and server disconnect after completing a request and response TCP Connect , Therefore, the server cannot predict the next action of the client , It doesn't even know if this user will visit again , So let HTTP Protocols to maintain user access status are also completely unnecessary ;
3、 Transfer part of the complexity to HTTP Protocol based technology can make HTTP It is relatively simple at the level of agreement , And this simplicity also gives HTTP Stronger scalability . in fact ,session Technology is also right in essence HTTP An extension of the protocol .
To make a long story short ,HTTP The statelessness of is determined by its historical mission . But with the vigorous development of network technology , People are no longer satisfied with rigid and boring static HTML, They hope web Application can move , So scripts and DOM technology ,HTML Added form in , And the server appears CGI Dynamic technology .
边栏推荐
- Tetris
- 浅谈镜头滤镜的类型及作用
- The ECU of 21 Audi q5l 45tfsi brushes is upgraded to master special adjustment, and the horsepower is safely and stably increased to 305 horsepower
- Mysql高级篇学习总结9:创建索引、删除索引、降序索引、隐藏索引
- Compilation et connexion de shader dans games202 - webgl (comprendre la direction)
- Configuration file converted from Excel to Lua
- flutter 实现一个有加载动画的按钮(loadingButton)
- Review of double pointer problems
- After the project is released, index Html is cached
- Note the various data set acquisition methods of jvxetable
猜你喜欢

Codeforces Round #804 (Div. 2) Editorial(A-B)

Modbus protocol communication exception

The ECU of 21 Audi q5l 45tfsi brushes is upgraded to master special adjustment, and the horsepower is safely and stably increased to 305 horsepower

F12 solve the problem that web pages cannot be copied

Review of double pointer problems

Pointer classic written test questions

JS quick start (II)

CUDA11.1在线安装

The ECU of 21 Audi q5l 45tfsi brushes is upgraded to master special adjustment, and the horsepower is safely and stably increased to 305 horsepower

Vulhub vulnerability recurrence 73_ Webmin
随机推荐
ARTS Week 25
改善Jpopup以实现动态控制disable
趋势前沿 | 达摩院语音 AI 最新技术大全
02. 开发博客项目之数据存储
After the project is released, index Html is cached
jdbc使用call调用存储过程报错
Ora-01779: the column corresponding to the non key value saving table cannot be modified
Deep learning -yolov5 introduction to actual combat click data set training
2022半年总结
Compilation and connection of shader in games202 webgl (learn from)
01. Project introduction of blog development project
Pointer classic written test questions
Jvxetable implant j-popup with slot
Configuration file converted from Excel to Lua
Oracle deletes duplicate data, leaving only one
04. 项目博客之日志
How to get list length
LeetCode_字符串反转_简单_557. 反转字符串中的单词 III
Yyds dry inventory SSH Remote Connection introduction
JS array list actual use summary