当前位置:网站首页>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 .
边栏推荐
- 指針經典筆試題
- Huawei od computer test question 2
- Three methods of Oracle two table Association update
- Notes, continuation, escape and other symbols
- Vulhub vulnerability recurrence 68_ ThinkPHP
- pix2pix:使用条件对抗网络的图像到图像转换
- nacos-高可用seata之TC搭建(02)
- HAC cluster modifying administrator user password
- Summary of deep learning tuning tricks
- flutter 实现一个有加载动画的按钮(loadingButton)
猜你喜欢

Compilation and connection of shader in games202 webgl (learn from)

Remember an error in MySQL: the user specified as a definer ('mysql.infoschema '@' localhost ') does not exist

Vulhub vulnerability recurrence 67_ Supervisor

【torch】|torch.nn.utils.clip_grad_norm_

Steady, 35K, byte business data analysis post

27io stream, byte output stream, OutputStream writes data to file

GAMES202-WebGL中shader的編譯和連接(了解向)

【云原生】3.1 Kubernetes平台安装KubeSpher

Unity Vector3. Use and calculation principle of reflect

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
随机推荐
Problems encountered in installing mysql8 on MAC
Excel转换为Lua的配置文件
Compilation and connection of shader in games202 webgl (learn from)
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
Drive development - the first helloddk
JDBC calls the stored procedure with call and reports an error
Summary of redis basic knowledge points
Unity gets the width and height of Sprite
2022 half year summary
Tetris
HAC集群修改管理员用户密码
Easy to understand IIC protocol explanation
ByteDance program yuan teaches you how to brush algorithm questions: I'm not afraid of the interviewer tearing the code
Select knowledge points of structure
Codeforces Round #804 (Div. 2) Editorial(A-B)
nacos-高可用seata之TC搭建(02)
[leetcode] 18. Sum of four numbers
自建DNS服务器,客户端打开网页慢,解决办法
Vulhub vulnerability recurrence 69_ Tiki Wiki
Remember an error in MySQL: the user specified as a definer ('mysql.infoschema '@' localhost ') does not exist