首页 > 解决方案 > 收到获取请求时如何防止servlet创建新会话?

问题描述

我的 servlet 中有一个部分,它使用 API 创建一个新会话。由于它在doGet函数中,所以当servlet每次收到get请求时,它也会创建一个新的会话。

只有当第一个获取请求到达时,我才会创建新会话。

标签: javaapihttpsessionservlets

解决方案


假设当您说“使用 API 创建新会话”时,您正在调用 Servlet 中的第 3 方 API,并补充 Code_Mode 的答案,您应该在调用此第 3 方 API 之前验证 servlet 中的会话是否刚刚创建。

HttpSession session = request.getSession();
if (session.isNew()) {
    // Do your API thing here
} 

如果存在一个现有会话并且该会话不是新的,则意味着不是第一次调用 doGet 方法。

干杯!


推荐阅读