我的网络应用程序是基于 spring 的。我每隔一小时安排一次这项工作,这项工作应该做的是创建一个 sessionId 并将其发送到另一个应用程序。目的是使其他应用程序能够登录到我的系统。
据我了解,当且仅当有来自客户端的用户请求时才可以使用 request.getSession() 。由于“我的工作”是一项预定工作,因此用户可能根本无法登录系统。
我应该如何解决我的问题?
最佳答案
您应该通过不使用 session ID 来解决此问题。
分配为查询参数或 cookie 值的 session ID 用于将服务器上维护的 HttpSession 对象与特定浏览器实例关联起来。它是内在的,对你来说没有任何意义。如果您配置了非常高的安全性,它甚至可能经常更改。
session ID 值没有意义。它只是一个用于识别之前创建的 session 的 token 。向应用程序发送未知 token 与不发送 token 相同,即应用程序创建一个新 session 并返回该 session 的新 session ID token 作为响应的一部分。
关于java - 如何在 Spring 中以编程方式生成 session ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37512623/