• 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();
        }
    }
  • 相关阅读:
    [译]Vulkan教程(09)窗口表面
    [译]Vulkan教程(08)逻辑设备和队列
    [译]Vulkan教程(07)物理设备和队列家族
    Linux命令行文本工具
    go语言周边
    go第三方常用包
    Centos6安装gcc4.8及以上版本
    pyenv设置python多版本环境
    Redis慢日志
    PHP-CPP开发扩展(七)
  • 原文地址:https://www.cnblogs.com/buyishi/p/8920453.html
Copyright © 2020-2023  润新知