首页 > 解决方案 > 会话是在第一次请求后自动创建的吗?

问题描述

我是网络开发的新手,我对Sessions有一些困惑。

我知道 :

会话是用于一项活动的总时间段。在计算机系统中,用户会话在用户登录或访问特定计算机、网络或软件服务时开始。它在用户退出服务或关闭计算机时结束。

根据这个定义,我得出结论,一旦用户进入,就会自动创建一个会话。

但是在许多 Web 编程语言 API 中,有一些方法可以在第一次请求后创建会话!. 比如Java:

request.getSession(true);

甲骨文文档:

返回与此请求关联的当前会话,或者如果请求没有会话,则创建一个。

客户端如何连接到服务器并发送了对服务器的请求但没有会话?

标签: javasessionwebnetworking

解决方案


但是在许多 Web 编程语言 API 中,有一些方法可以在第一次请求后创建会话!。比如Java:

这是因为与其他协议 SSH/ftp 不同,http 是无状态的。为了识别用户,服务器必须为用户创建一个会话。

客户端如何连接到服务器并发送了对服务器的请求但没有会话?

在 HTTP 的上下文中:连接不需要会话。连接只需要服务器的地址(可能还有 https 的数字证书)。会话仅用于识别用户。对于不需要用户识别的博客或新闻板,服务器可以选择不为用户创建会话。


推荐阅读