用户进行身份验证后,无需再次对用户的后续请求进行身份验证。这是使用JSESSIONID实现的 但我不确定的是,JSESSIONID是如何通过的?作为标题字段或cookie字段。或者由应用程序开发人员选择一种或另一种方法。
当spring-security用于身份验证和授权时,有人可以解释这是如何工作的。
答案 0 :(得分:2)
对于特定用户,JSESSIONID将是相同的,除非用户会话被销毁。如果要将同一会话设置回用户,可以从HttpServletRequest获取JSESSIONID并将其设置为HttpServletResponse。这就是内部发生的事情。
每个请求都与会话相关联,不同用户将使用不同的会话访问您的应用程序。
如果您的用户浏览器在任何情况下都松开了JSESSIONID,但您希望他继续使用您的应用程序,则必须进行设置。
默认情况下,存储在Cookie中的JSESSIONID是清除Cookie的原因,您将从已登录的所有应用程序中注销。
答案 1 :(得分:0)
JSESSIONID是由J2EE标准定义的cookie,它与cookie HTTP标头中的其他cookie一起传递,其值遵循[cookie1] = [value1]格式; [cookie2] = [value2]; ...
示例:
File "<input>", line 2, in <module>
File "C:\Program Files (x86)\Eclipse\Sumo\tools\traci\__init__.py", line 95, in start
sumoProcess = subprocess.Popen(cmd + ["--remote-port", str(port)])
File "D:\Anaconda\envs\untitled1\lib\subprocess.py", line 775, in __init__
restore_signals, start_new_session)
File "D:\Anaconda\envs\untitled1\lib\subprocess.py", line 1178, in _execute_child
startupinfo)
FileNotFoundError: [WinError 2] The system cannot find the file specified
答案 2 :(得分:0)
它将作为
发送Cookie:JSESSIONID =其他; customCookie = SOMEOTHERTHIG
在标题中