关于浏览器访问服务器 sessionid的东西

2024-06-19 02:32

本文主要是介绍关于浏览器访问服务器 sessionid的东西,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

昨天快下班了,公司的小美女开发翟L,问了一个问题:“保存sessionid的cookie是什么时候创建的??”。

我想了半天:

知道session的用法,以及session的生命周期(第一次调用,requset.getsession(true)时创建);

也知道cookie的用法;

也知道session其实是基于cookie的;

但是“保存sessionid的cookie是什么时候创建的??”,有个现象:浏览器请求一个服务器资源,第一次请求后一般情况下,浏览器都能拿到一个保存有jsessionid的cookie,但是我们的代码里面,可并没有req.getsession()的语句,更别提搞个cookie,把sessionid存进去。


昨晚我试了下:

1.直接请求一个url,直接返回一个html页面,监控sessionid。(发现是有的)



2.直接请求一个url, 相应的方法里面有 req.getsession(false);(意思是如果有session,就返回;如果没有就返回null)

  发现:session是有的。(在我们调用 req.getsession前就有了)



目前的推测:  浏览器和服务器建立,会创建session,把sessionid保存在cookie中,返给浏览器。但是这些不需要我们程序员去实现,是服务器(tomcat等帮我们做的)。

-------------------------------------------

还是回到翟的问题:“保存sessionid的cookie是什么时候创建的??” 

答:是浏览器第一次访问服务器时创建的,可能在服务器内部是这样的:第一次访问,调用req.getsession(true), 第一次访问没有session,所以去新建一个,然后new Cookie,将 sessionid存进去。(具体的源码没有找到)

-----------

其他session和cookie的相关知识:

https://blog.csdn.net/qq_33251859/article/details/77481868

https://www.cnblogs.com/woshimrf/p/5317776.html

https://blog.csdn.net/xihuangwutong/article/details/9819033 

这篇关于关于浏览器访问服务器 sessionid的东西的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1073753

相关文章

python运用requests模拟浏览器发送请求过程

《python运用requests模拟浏览器发送请求过程》模拟浏览器请求可选用requests处理静态内容,selenium应对动态页面,playwright支持高级自动化,设置代理和超时参数,根据需... 目录使用requests库模拟浏览器请求使用selenium自动化浏览器操作使用playwright

Python极速搭建局域网文件共享服务器完整指南

《Python极速搭建局域网文件共享服务器完整指南》在办公室或家庭局域网中快速共享文件时,许多人会选择第三方工具或云存储服务,但这些方案往往存在隐私泄露风险或需要复杂配置,下面我们就来看看如何使用Py... 目录一、android基础版:HTTP文件共享的魔法命令1. 一行代码启动HTTP服务器2. 关键参

Python获取浏览器Cookies的四种方式小结

《Python获取浏览器Cookies的四种方式小结》在进行Web应用程序测试和开发时,获取浏览器Cookies是一项重要任务,本文我们介绍四种用Python获取浏览器Cookies的方式,具有一定的... 目录什么是 Cookie?1.使用Selenium库获取浏览器Cookies2.使用浏览器开发者工具

WinForm跨线程访问UI及UI卡死的解决方案

《WinForm跨线程访问UI及UI卡死的解决方案》在WinForm开发过程中,跨线程访问UI控件和界面卡死是常见的技术难题,由于Windows窗体应用程序的UI控件默认只能在主线程(UI线程)上操作... 目录前言正文案例1:直接线程操作(无UI访问)案例2:BeginInvoke访问UI(错误用法)案例

SpringBoot改造MCP服务器的详细说明(StreamableHTTP 类型)

《SpringBoot改造MCP服务器的详细说明(StreamableHTTP类型)》本文介绍了SpringBoot如何实现MCPStreamableHTTP服务器,并且使用CherryStudio... 目录SpringBoot改造MCP服务器(StreamableHTTP)1 项目说明2 使用说明2.1

mysql中的服务器架构详解

《mysql中的服务器架构详解》:本文主要介绍mysql中的服务器架构,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1、背景2、mysql服务器架构解释3、总结1、背景简单理解一下mysqphpl的服务器架构。2、mysjsql服务器架构解释mysql的架

MySQL中的InnoDB单表访问过程

《MySQL中的InnoDB单表访问过程》:本文主要介绍MySQL中的InnoDB单表访问过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1、背景2、环境3、访问类型【1】const【2】ref【3】ref_or_null【4】range【5】index【6】

浏览器插件cursor实现自动注册、续杯的详细过程

《浏览器插件cursor实现自动注册、续杯的详细过程》Cursor简易注册助手脚本通过自动化邮箱填写和验证码获取流程,大大简化了Cursor的注册过程,它不仅提高了注册效率,还通过友好的用户界面和详细... 目录前言功能概述使用方法安装脚本使用流程邮箱输入页面验证码页面实战演示技术实现核心功能实现1. 随机

Linux如何快速检查服务器的硬件配置和性能指标

《Linux如何快速检查服务器的硬件配置和性能指标》在运维和开发工作中,我们经常需要快速检查Linux服务器的硬件配置和性能指标,本文将以CentOS为例,介绍如何通过命令行快速获取这些关键信息,... 目录引言一、查询CPU核心数编程(几C?)1. 使用 nproc(最简单)2. 使用 lscpu(详细信

前端如何通过nginx访问本地端口

《前端如何通过nginx访问本地端口》:本文主要介绍前端如何通过nginx访问本地端口的问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、nginx安装1、下载(1)下载地址(2)系统选择(3)版本选择2、安装部署(1)解压(2)配置文件修改(3)启动(4)