Servlets 将jsessionid追加到从请求头接收的请求url

Servlets 将jsessionid追加到从请求头接收的请求url,servlets,Servlets,目前,在我们的应用程序中,客户端应用程序正在一个请求头中发送jsessionid。 现在,我想将在请求头中收到的这个jsessionid附加到请求url以创建会话 我想创建一个与URL重写相同的行为,在URL重写中,当jsessionid附加到请求URL时会自动创建会话 我还想发送这个更新后的请求url,并将jsessionid附加到下一个过滤器中,在那里我可以获取会话 出于某些安全原因,我们不想将jsessionid附加到请求url,而是决定在请求头中发送 让我知道如何才能做到这一点。试试这个

目前,在我们的应用程序中,客户端应用程序正在一个请求头中发送jsessionid。 现在,我想将在请求头中收到的这个jsessionid附加到请求url以创建会话

我想创建一个与URL重写相同的行为,在URL重写中,当jsessionid附加到请求URL时会自动创建会话

我还想发送这个更新后的请求url,并将jsessionid附加到下一个过滤器中,在那里我可以获取会话

出于某些安全原因,我们不想将jsessionid附加到请求url,而是决定在请求头中发送

让我知道如何才能做到这一点。

试试这个

public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
    HttpServletRequest request = (HttpServletRequest) request;
    HttpServletResponse response = (HttpServletResponse) response;

    if ("GET".equals(request.getMethod()) && request.getParameter("JSESSIONID") != null) {
        response.sendRedirect(request.getRequestURL().append(";JSESSIONID=")
            .append(request.getParameter("JSESSIONID")).toString());
    } else {
        chain.doFilter(request, response);
    }
}

也请看一下

谢谢您的回复@san krish。但我需要将这个更新的请求发送到其他过滤器,以创建会话,因为现在附加了jsessionid,并且不想重定向。