socket.Io demo
2016-12-22 14:17
197 查看
server端
客户端
demo包等会发
package com.test.server; import com.corundumstudio.socketio.AckRequest; import com.corundumstudio.socketio.Configuration; import com.corundumstudio.socketio.SocketIOClient; import com.corundumstudio.socketio.SocketIOServer; import com.corundumstudio.socketio.listener.ConnectListener; import com.corundumstudio.socketio.listener.DataListener; import com.corundumstudio.socketio.listener.DisconnectListener; import org.apache.commons.lang.StringUtils; import org.apache.log4j.Logger; /** * Created by leo_wang on 2016/12/22. * * @describe */ public class SecketIoServer { private static Logger logger = Logger.getLogger(SecketIoServer.class.getName()); // server private static SocketIOServer server = null; private void initServer(){ Configuration configuration = new Configuration(); configuration.setHostname("127.0.0.1");//IP地址 configuration.setPort(9090);//端口 configuration.setMaxFramePayloadLength(500 * 1024);//最大传输 configuration.setMaxHttpContentLength(500 * 1024); server = new SocketIOServer( configuration ); server.start(); server.addConnectListener(new ConnectListener() { @Override public void onConnect(SocketIOClient client) { // TODO Auto-generated method stub } }); server.addDisconnectListener(new DisconnectListener() { @Override public void onDisconnect(SocketIOClient client) { //TODO Auto-generated method stub System.out.println("连接关闭"); } }); // server.addListeners("test",); server.addEventListener("demo", String.class, new DataListener<String>() { @Override public void onData(SocketIOClient client, String data, AckRequest ackRequest) throws Exception { String demo = data; if (StringUtils.isNotBlank(demo)) { System.out.println(demo); logger.info("连接成功!key=" + demo); client.sendEvent("demoOK", data); } } }); } public static void main(String agrs[]){ SecketIoServer server = new SecketIoServer(); server.initServer(); } }
客户端
package com.test.client; import io.socket.client.IO; import io.socket.client.Socket; import io.socket.emitter.Emitter; import org.apache.log4j.Logger; import org.json.JSONException; import org.json.JSONObject; import java.net.URISyntaxException; import java.text.SimpleDateFormat; import java.util.Date; /** * Created by leo_wang on 2016/12/22. * * @describe */ public class SocketIoClient { private static Logger logger = Logger.getLogger(SocketIoClient.class.getName()); private Socket socket; private boolean isConnected = false; public void initSocket() throws URISyntaxException { socket = IO.socket("http://127.0.0.1:9090"); socket.on(Socket.EVENT_CONNECT, new Emitter.Listener() { @Override public void call(Object... args) { } }).on("event", new Emitter.Listener() { @Override public void call(Object... args) {} }).on(Socket.EVENT_DISCONNECT, new Emitter.Listener() { @Override public void call(Object... args) { System.out.println("关闭连接"); } }); socket.connect(); } public void sendDemo() throws JSONException { JSONObject obj = new JSONObject(); obj.put("name", "test"); SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH时MM分ss秒"); String date = sdf.format(new Date()); obj.put("time", date); socket.emit("demo", obj.toString()); // Receiving an object socket.on("demoOK", new Emitter.Listener() { @Override public void call(Object... args) { // System.out.println(args[0]); JSONObject obj = null; try { obj = new JSONObject(args[0]+""); } catch (JSONException e) { e.printStackTrace(); } System.out.println(obj); } }); } public void disconnection(){ if (socket.connected()) { System.out.println("需要关闭连接"); socket.disconnect(); } } public static void main(String agrs[]){ SocketIoClient client = new SocketIoClient(); try { client.initSocket(); client.sendDemo(); client.disconnection(); } catch (URISyntaxException e) { e.printStackTrace(); } catch (JSONException e) { e.printStackTrace(); } } }
demo包等会发
相关文章推荐
- 基于Node.js + socket.io实现WebSocket的聊天DEMO
- socket.io入门以及简易聊天室Demo的展示
- socket.io插件调用的demo
- Native Socket.IO and Android demo
- socket io网络编程demo
- 【学习笔记】socket IO demo
- Socket.io官方聊天室DEMO的学习笔记
- Aio--Java异步IO的 Socket Demo
- 如何理解socket.io官网上创建聊天室的demo
- socket io demo 项目
- 使用Node.js+socket.io制作服务端,unity+socket.io for unity 制作客户端 ,验证位置同步Demo
- Aio--Java异步IO的 Socket Demo
- 【自己的整理】socket.io官方demo|创建简单的聊天应用
- Socket+JDBC+IO实现Java文件上传下载器DEMO详解
- Aio--Java异步IO的 Socket Demo
- socket.io简单说明及在线抽奖demo
- iOS Client 与WebSocket 通信 入门demo 即时通讯 socketio
- socket.io使用之io.socket.engineio.client.EngineIOException: server error,parser error
- 使用 appetize.io 为你的 demo 创建在线预览
- socket.io