1
zj
2024-08-05 edaa364ccc37fe5372bca577482dd5d7142425cd
kucoinClient/src/main/java/org/example/kucoinclient/wsClient/KucoinClient.java
@@ -12,6 +12,7 @@
import javax.websocket.*;
import java.io.UnsupportedEncodingException;
import java.math.BigDecimal;
import java.net.URI;
import java.net.URLEncoder;
import java.nio.ByteBuffer;
@@ -144,10 +145,25 @@
            // 空值检查,避免存储 null 值到 Redis
            if (resultMap.get("bids") != null) {
                hashMap.put("bids", resultMap.get("bids")); // 存储 bids
                Object bidsObj = resultMap.get("bids");
                if (bidsObj instanceof List && !((List<?>) bidsObj).isEmpty()) {
                    List<String> bidsList = (List<String>) bidsObj;
                    HashMap<String, Object> pvMap = new HashMap<>(); // 创建新的 HashMap 保存 bids 和 asks
                    pvMap.put("p", bidsList.get(0));
                    pvMap.put("V", bidsList.get(1));
                    hashMap.put("bids",pvMap);
                }
            }
            if (resultMap.get("asks") != null) {
                hashMap.put("asks", resultMap.get("asks")); // 存储 asks
                Object asksObj = resultMap.get("asks");
                if (asksObj instanceof List && !((List<?>) asksObj).isEmpty()) {
                    List<String> asksList = (List<String>) asksObj;
                    HashMap<String, Object> pvMap = new HashMap<>(); // 创建新的 HashMap 保存 bids 和 asks
                    pvMap.put("p", asksList.get(0));
                    pvMap.put("V", asksList.get(1));
                    hashMap.put("asks",pvMap);
                }
            }
            String symbol = extractSymbolFromTopic(topic); // 从 topic 提取符号
@@ -231,7 +247,7 @@
        Map<String, Object> jsonMap = new HashMap<>();
        jsonMap.put("id", id); // 会话 ID
        jsonMap.put("type", "subscribe"); // 订阅类型
        jsonMap.put("topic", "/spotMarket/level2Depth50:" + symbol); // 订阅的主题
        jsonMap.put("topic", "/spotMarket/level1:" + symbol); // 订阅的主题
        jsonMap.put("privateChannel", false); // 是否私有通道
        jsonMap.put("response", true); // 是否返回响应