im问题修复-获取不到用户
This commit is contained in:
parent
e97416feeb
commit
53cc5a0d76
@ -51,7 +51,7 @@ public class MallsuiteImSocketHandler implements WebSocketHandler {
|
|||||||
public void afterConnectionEstablished(WebSocketSession session) throws Exception {
|
public void afterConnectionEstablished(WebSocketSession session) throws Exception {
|
||||||
logger.debug("connect to the websocket success......");
|
logger.debug("connect to the websocket success......");
|
||||||
|
|
||||||
String loginUserId = (String) session.getAttributes().get(Constants.WEBSOCKET_LOGINNAME);
|
String loginUserId = String.valueOf(session.getAttributes().get("user_id")) ;
|
||||||
String sessionId = session.getId();
|
String sessionId = session.getId();
|
||||||
|
|
||||||
// 存储到本地会话管理
|
// 存储到本地会话管理
|
||||||
@ -63,7 +63,7 @@ public class MallsuiteImSocketHandler implements WebSocketHandler {
|
|||||||
|
|
||||||
// 注册到分布式会话服务
|
// 注册到分布式会话服务
|
||||||
Map<String, Object> attributes = new HashMap<>();
|
Map<String, Object> attributes = new HashMap<>();
|
||||||
attributes.put("user_id", session.getAttributes().get("user_id"));
|
attributes.put("user_id", String.valueOf(session.getAttributes().get("user_id")));
|
||||||
attributes.put("loginName", loginUserId);
|
attributes.put("loginName", loginUserId);
|
||||||
distributedSessionService.registerUserSession(loginUserId, sessionId, attributes);
|
distributedSessionService.registerUserSession(loginUserId, sessionId, attributes);
|
||||||
|
|
||||||
@ -198,11 +198,14 @@ public class MallsuiteImSocketHandler implements WebSocketHandler {
|
|||||||
* 清理会话资源
|
* 清理会话资源
|
||||||
*/
|
*/
|
||||||
private void cleanupSession(WebSocketSession session) {
|
private void cleanupSession(WebSocketSession session) {
|
||||||
String loginUserId = (String) session.getAttributes().get(Constants.WEBSOCKET_LOGINNAME);
|
String loginUserId = String.valueOf(session.getAttributes().get("user_id")) ;
|
||||||
String sessionId = session.getId();
|
String sessionId = session.getId();
|
||||||
String groupId = (String) session.getAttributes().get(Constants.WEBSOCKET_GROUP_KEY);
|
String groupId = (String) session.getAttributes().get(Constants.WEBSOCKET_GROUP_KEY);
|
||||||
|
|
||||||
// 从本地管理移除
|
// 从本地管理移除
|
||||||
|
if(localSessionManager.getUserSessions()==null){
|
||||||
|
localSessionManager.setUserSessions(new ConcurrentHashMap<>());
|
||||||
|
}
|
||||||
localSessionManager.removeUserSession(loginUserId, session);
|
localSessionManager.removeUserSession(loginUserId, session);
|
||||||
if (groupId != null) {
|
if (groupId != null) {
|
||||||
localSessionManager.removeGroupSession(groupId, session);
|
localSessionManager.removeGroupSession(groupId, session);
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user