直接上代码:
socketIOServer.addConnectListener(new ConnectListener() {
public void onConnect(SocketIOClient socketIOClient) {
String sessionId = socketIOClient.getSessionId().toString();
String token = socketIOClient.getHandshakeData().getSingleUrlParam("token");
log.info("onConnect: sessionId: {}, token: {}",
sessionId, token);
boolean validToken = true;
if (StringUtil.isEmpty(token)) {
log.warn("onConnect: sessionId: {}, token: {}: empty token",
sessionId, token);
socketIOClient.disconnect();
return;
}
validToken = SessionUtil.verifyToken(token); // 后台验证token是否合法
if (!validToken) {
log.warn("onConnect: sessionId: {}, token: {}: invalid token",
sessionId, token);
socketIOClient.disconnect();
return;
}
log.info("onConnect: sessionId: {}, token: {}: valid token",
sessionId, token);
}
});
本文介绍如何使用Socket.IO进行连接监听,并在客户端连接时验证Token的有效性。通过检查Token,确保只有合法用户才能接入服务,提高了系统的安全性。
4252

被折叠的 条评论
为什么被折叠?



