• Java WebSocket库:https://github.com/TooTallNate/Java-WebSocket


    https://github.com/TooTallNate/Java-WebSocket

    以下是简单示例:

    import com.google.gson.JsonObject;
    import com.google.gson.JsonParser;
    import static java.lang.System.err;
    import static java.lang.System.out;
    import java.net.InetSocketAddress;
    import org.java_websocket.WebSocket;
    import org.java_websocket.handshake.ClientHandshake;
    import org.java_websocket.server.WebSocketServer;
    
    public class Main {
    
        private static class WebScoketServerImpl extends WebSocketServer {
    
            private WebScoketServerImpl(int port) {
                super(new InetSocketAddress(port));
            }
    
            @Override
            public void onOpen(WebSocket conn, ClientHandshake handshake) {
                out.println("WebScoketServerImpl.onOpen(WebSocket, ClientHandshake) called");
            }
    
            @Override
            public void onClose(WebSocket conn, int code, String reason, boolean remote) {
                out.println("WebScoketServerImpl.onClose(WebSocket, int, String, boolean) called: " + reason);
            }
    
            @Override
            public void onMessage(WebSocket conn, String message) {
                out.println("WebScoketServerImpl.onMessage(WebSocket, String) called: " + message);
                JsonObject root = new JsonParser().parse(message).getAsJsonObject();
                if (root.get("type").getAsString().equals("print")) {
                    JsonObject jsonObject = new JsonObject();
                    jsonObject.addProperty("type", "print");
                    jsonObject.addProperty("error_message", "None");
                    jsonObject.addProperty("error_code", 1);
                    conn.send(jsonObject.toString());
                } else {
                    JsonObject jsonObject = new JsonObject();
                    jsonObject.addProperty("type", "getWeight");
                    jsonObject.addProperty("error_code", 0);
                    jsonObject.addProperty("weight", "0.000kg");
                    conn.send(jsonObject.toString());
                }
            }
    
            @Override
            public void onError(WebSocket conn, Exception ex) {
                err.println("WebScoketServerImpl.onError(WebSocket, Exception) called: " + ex);
            }
    
            @Override
            public void onStart() {
                out.println("WebScoketServerImpl.onStart() called");
            }
    
        }
    
        public static void main(String[] args) {
            Main.WebScoketServerImpl websocketServer = new Main.WebScoketServerImpl(1234);
            websocketServer.start();
        }
    }
  • 相关阅读:
    redis消息队列
    redis数据结构及使用场景
    HTTP状态码
    ASP.NET处理管道初谈
    kNN(k邻近算法)
    HeadFirst
    Python学习笔记——进程、线程、网络编程
    Python学习笔记-20180428——处理JSON
    Python学习笔记-20180426
    基于百度地图的 JavaScript API示例学习
  • 原文地址:https://www.cnblogs.com/buyishi/p/8920453.html
Copyright © 2020-2023  润新知