package com.zhoujw.socketiotest.test2;
import com.corundumstudio.socketio.Configuration;
import com.corundumstudio.socketio.SocketIOClient;
import com.corundumstudio.socketio.SocketIOServer;
import com.corundumstudio.socketio.listener.ConnectListener;
import java.util.Collection;
/**
* SocketIo 执行工具类
*
* @author: zhoujw
* @Date: 2018-08-02
*/
public class Socketio {
static SocketIOServer socketIOServer;
/**
* 添加客户端
*/
public void startSocketio() throws InterruptedException {
//配置
Configuration config = new Configuration();
//指定要主机ip地址,与页面请求ip保持一致
config.setHostname("localhost");
//指定端口号
config.setPort(9092);
//设置最大的webSocket帧内容长度限制
config.setMaxFramePayloadLength(1024*1024);
//设置最大的Http内容长度限制
config.setMaxHttpContentLength(1024*1024);
socketIOServer = new SocketIOServer(config);
ConnectListener connect = new ConnectListener() {
@Override
public void onConnect(SocketIOClient socketIOClient) {
//todo -> 客户端检验? 客户端详操?
System.out.println("添加");
}
};
//添加客户端
socketIOServer.addConnectListener(connect);
socketIOServer.start();
//设置超时时间
Thread.sleep(Integer.MAX_VALUE);
socketIOServer.stop();
}
/**
* 全体消息推送
* @param type 前台根据类型接收消息,所以接收的消息类型不同,收到儿都通知就不同 => 推送事件类型 /todo 类型可以设置成 监听分组?
* @param content
*/
public void pushArr(String type,String content) throws InterruptedException {
// if (socketIOServer == null){
// startSocketio();
// }
//获取全部客户端
Collection<SocketIOClient> allClients = socketIOServer.getAllClients();
for (SocketIOClient clientSocket: allClients) {
/*
todo 客户端支持操作
void send(Packet var1);
void disconnect();
void sendEvent(String var1, Object... var2);
*/
clientSocket.sendEvent(type,content);
}
}
/**
* 启动服务
*/
public void startServer(){
if (socketIOServer == null) {
new Thread(new Runnable() {
@Override
public void run() {
try {
startSocketio();
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}).start();
}
}
/**
* 停止服务
*/
public void stopServer(){
if (socketIOServer != null) {
socketIOServer.stop();
socketIOServer = null;
}
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
springboot工程基于netty-socketio的 web推送消息简单代码

共112个文件
xml:76个
class:11个
java:9个


基于springboot工程依赖的netty-socketio实现的web页面消息推送服务实现
资源推荐
资源详情
资源评论












收起资源包目录





































































































共 112 条
- 1
- 2
资源评论

- 天空上尉2019-04-01东西很好值得下载
- 损人利己2019-01-25还没试,应该靠谱
jwzhoug
- 粉丝: 3
- 资源: 1

上传资源 快速赚钱
我的内容管理 收起
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助

会员权益专享
安全验证
文档复制为VIP权益,开通VIP直接复制
