|
|
@@ -12,22 +12,16 @@ import javax.websocket.server.PathParam;
|
|
|
import javax.websocket.server.ServerEndpoint;
|
|
|
import org.slf4j.Logger;
|
|
|
import org.slf4j.LoggerFactory;
|
|
|
-import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Component;
|
|
|
|
|
|
-import me.zhengjie.security.security.TokenProvider;
|
|
|
-
|
|
|
@ServerEndpoint("/appSocketServer/{sname}")
|
|
|
@Component
|
|
|
public class AppSocketServer {
|
|
|
-
|
|
|
private static final Logger log = LoggerFactory.getLogger(AppSocketServer.class);
|
|
|
private static int onlineCount = 0;
|
|
|
private static CopyOnWriteArraySet<AppSocketServer> webSocketSet = new CopyOnWriteArraySet<>();
|
|
|
private Session session;
|
|
|
private String sname = "";
|
|
|
- @Autowired
|
|
|
- TokenProvider tokenProvider;
|
|
|
|
|
|
public AppSocketServer() {
|
|
|
// com.gangquan360.smartadmin.module.employee.EmployeeController.query dd;
|
|
|
@@ -75,28 +69,14 @@ public class AppSocketServer {
|
|
|
|
|
|
@OnMessage
|
|
|
public void onMessage(String message, Session session) {
|
|
|
- String[] msgs = null;
|
|
|
- String heartbeat = message;
|
|
|
- if (message.contains(",")) {
|
|
|
- msgs = message.split(",");
|
|
|
- heartbeat = msgs[0];
|
|
|
- }
|
|
|
log.info("收到来自窗口" + this.sname + "的信息:" + message);
|
|
|
Iterator<AppSocketServer> iterator = webSocketSet.iterator();
|
|
|
|
|
|
while (iterator.hasNext()) {
|
|
|
AppSocketServer item = (AppSocketServer) iterator.next();
|
|
|
try {
|
|
|
- // 判断token是否存在,不存在则删除
|
|
|
if (item.sname.equals(this.sname)) {
|
|
|
- if (msgs != null && msgs[1] != null) {
|
|
|
- Object obj = tokenProvider.getToken(msgs[1]);
|
|
|
- if (obj == null) {
|
|
|
- item.sendMessage("close");
|
|
|
- continue;
|
|
|
- }
|
|
|
- }
|
|
|
- item.sendMessage(heartbeat);
|
|
|
+ item.sendMessage(message);
|
|
|
}
|
|
|
} catch (IOException e) {
|
|
|
e.printStackTrace();
|