[英]Get session token for Spring boot/security in controller
我們使用spring boot和spring security來實現查詢接口。 我想要做的是只允許每個用戶一次運行固定數量的查詢。 查詢可能需要很長時間,用戶可能會比我們的響應更快地發送重復請求。 我希望控制器一次只計算一個子集請求,我將不得不實現一些邏輯來確定響應的請求。
為此,我需要知道給定用戶的會話令牌。 有沒有一種簡單的方法可以在控制器的方法中得到它?
我發現在請求映射中添加參數'HttpSession session'更容易:
@GetMapping(value = "/hello")
public String home(HttpSession session) {
String sessionId = session.getId();
System.out.println("[session-id]: " + sessionId);
...
return "anyPage";
}
如果要在控制器中獲取sessionId,可以使用RequestContextHolder.currentRequestAttributes().getSessionId();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.