我的网络应用程序是基于弹簧的。我每隔一小时安排一次这个工作,工作应该是创建一个sessionId并将其发送到另一个应用程序。目的是使其他应用程序能够登录我的系统。
据我所知,当且仅当有来自客户端的用户请求时,才能使用request.getSession()。由于我的作业是预定作业,因此用户可能根本不会登录系统。
我该如何处理我的问题?
答案 0 :(得分:1)
您应该通过不使用会话ID来解决问题。
分配为查询参数或cookie值的会话ID用于将服务器上维护的<tbody>
@foreach (var task in Model.TasksSummaryList)
{
<tr>
<th onclick="OnPatientSelected('@task.PatientID')">@task.PatientName</th>
<th>@task.Status</th>
<th>@task.TaskCount</th>
<th>@task.MostRecentTask</th>
</tr>
}
</tbody>
对象与特定浏览器实例相关联。它是内部的,对你没有意义。如果您配置了非常高的安全性,它甚至可能经常更改。
会话ID值没有意义。它只是识别以前创建的会话的标记。向应用程序发送未知令牌与不发送令牌相同,即应用程序创建新会话并作为响应的一部分为该会话返回新的会话ID令牌。