HTTP请求是无状态的,会话通过不同的方式位于HTTP之上
客户有责任通过服务器期望的方式确保他们参与会话。使用Java Servlet API实现服务器时,它是 cookie或URL后面带有相同名称的查询参数,用于标识会话ID。
如果客户端不支持cookie,则必须使用Java Servlet API重定向到所创建的URLHttpServletResponse.encodeRedirectURL(String url)
。
为了从servlet重定向,请使用HttpServletResponse.sendRedirect(String url);
。
使用标准的HTTP重定向响应服务器将简化您的设计。 确实实现了这些标准,因此将遵循此处说明的来自服务器的 和 响应,因此客户端上不需要重定向逻辑。
您的客户端是 ,当后续对同一域发出请求时,其ajax实现将尊重并重播为任何给定域设置的cookie。
如果您要重定向到其他域,则要让 与 会话一起使用,请添加xhrFields
到您的请求中:
$.ajax({
url: a_cross_domain_url,
xhrFields: {
withCredentials: true
}
});