From 3cfb3d987566f4baf5563a52dced85c9bd8a5391 Mon Sep 17 00:00:00 2001
From: dd <gitluke@outlook.com>
Date: Fri, 26 Dec 2025 01:47:15 +0800
Subject: [PATCH] 1

---
 src/main/java/com/nq/service/impl/StockServiceImpl.java  |    5 ++
 src/main/java/com/nq/ws/WebSocketClientBeanConfig.java   |   32 ++++++++--------
 src/main/java/com/nq/service/impl/PriceServicesImpl.java |   50 +++++++++----------------
 3 files changed, 39 insertions(+), 48 deletions(-)

diff --git a/src/main/java/com/nq/service/impl/PriceServicesImpl.java b/src/main/java/com/nq/service/impl/PriceServicesImpl.java
index f33d4db..c0a3e1d 100644
--- a/src/main/java/com/nq/service/impl/PriceServicesImpl.java
+++ b/src/main/java/com/nq/service/impl/PriceServicesImpl.java
@@ -109,54 +109,40 @@
         }
     }
 
-    public String doGet(String pid){
+    public String doGet(String pid) {
+        // 从配置中获取 API URL,并拼接 key
         String apiUrl = PropertiesUtil.getProperty("JS_IN_HTTP_URL") + "stock?key=" + PropertiesUtil.getProperty("JS_IN_KEY");
         String result = null;
-
         try {
-            // 添加请求间隔,避免频率过高
-            Thread.sleep(1000); // 等待1秒再请求
-        } catch (InterruptedException e) {
-            Thread.currentThread().interrupt();
-        }
-
-        try {
+            Thread.sleep(3000);
             URL url = new URL(apiUrl);
             HttpURLConnection connection = (HttpURLConnection) url.openConnection();
 
-            // 设置超时时间
-            connection.setConnectTimeout(10000);
-            connection.setReadTimeout(10000);
+            // 设置请求方法为 POST
             connection.setRequestMethod("POST");
+            // 设置请求头
             connection.setRequestProperty("Content-Type", "application/json; charset=utf-8");
-            connection.setDoOutput(true);
+            connection.setDoOutput(true); // 允许向连接输出
 
-            // JSON格式请求体
-            String jsonInputString = "{\"pid\":\"" + pid + "\"}";
+            // 构建 POST 数据
+            String postData = "pid=" + pid;
 
+            // 发送 POST 请求
             try (OutputStream os = connection.getOutputStream()) {
-                byte[] input = jsonInputString.getBytes("utf-8");
+                byte[] input = postData.getBytes("utf-8");
                 os.write(input, 0, input.length);
             }
 
-            // 检查HTTP响应码
-            int responseCode = connection.getResponseCode();
-            if (responseCode == 429) {
-                // 如果还是429,等待更长时间后重试
-                Thread.sleep(3000);
-                return doGet(pid); // 递归重试(注意设置最大重试次数)
-            }
-
             // 读取响应
-            try (BufferedReader in = new BufferedReader(
-                    new InputStreamReader(connection.getInputStream()))) {
-                String inputLine;
-                StringBuilder response = new StringBuilder();
-                while ((inputLine = in.readLine()) != null) {
-                    response.append(inputLine);
-                }
-                result = response.toString();
+            BufferedReader in = new BufferedReader(new InputStreamReader(connection.getInputStream()));
+            String inputLine;
+            StringBuffer response = new StringBuffer();
+
+            while ((inputLine = in.readLine()) != null) {
+                response.append(inputLine);
             }
+            in.close();
+            result = response.toString();
         } catch (Exception e) {
             e.printStackTrace();
         }
diff --git a/src/main/java/com/nq/service/impl/StockServiceImpl.java b/src/main/java/com/nq/service/impl/StockServiceImpl.java
index 5aefa76..d606bfe 100644
--- a/src/main/java/com/nq/service/impl/StockServiceImpl.java
+++ b/src/main/java/com/nq/service/impl/StockServiceImpl.java
@@ -435,6 +435,11 @@
         /*股票日线-K线*/
     @Override
     public Object getKData(String pid, String interval, String stockType) {
+        try {
+            Thread.sleep(3000);
+        }catch (Exception e){
+            e.printStackTrace();
+        }
         EStockType eStockType = EStockType.getEStockTypeByCode(stockType);
         Object object = HttpUtil.get(eStockType.stockUrl + "kline?pid=" + pid + "&interval=" + interval + "&key=" + eStockType.stockKey);
         Gson gson = new Gson();
diff --git a/src/main/java/com/nq/ws/WebSocketClientBeanConfig.java b/src/main/java/com/nq/ws/WebSocketClientBeanConfig.java
index 033465e..21104c5 100644
--- a/src/main/java/com/nq/ws/WebSocketClientBeanConfig.java
+++ b/src/main/java/com/nq/ws/WebSocketClientBeanConfig.java
@@ -16,21 +16,21 @@
 @Configuration
 public class WebSocketClientBeanConfig {
 
-
-    @Bean
-    public void websocketRunClientMap() {
-
-        // 创建WebSocket客户端实例
-        try {
-            URI serverUri = new URI("wss://ws.durocaspitall.com/websocket-server");
-            EStockType stockType = EStockType.IN; // 根据你的枚举调整
-
-            WebsocketRunClient client = new WebsocketRunClient(serverUri, stockType);
-            client.connect();
-
-        } catch (Exception e) {
-            log.error("创建WebSocket客户端失败: {}", e.getMessage(), e);
-        }
-    }
+//
+//    @Bean
+//    public void websocketRunClientMap() {
+//
+//        // 创建WebSocket客户端实例
+//        try {
+//            URI serverUri = new URI("wss://ws.durocaspitall.com/websocket-server");
+//            EStockType stockType = EStockType.IN; // 根据你的枚举调整
+//
+//            WebsocketRunClient client = new WebsocketRunClient(serverUri, stockType);
+//            client.connect();
+//
+//        } catch (Exception e) {
+//            log.error("创建WebSocket客户端失败: {}", e.getMessage(), e);
+//        }
+//    }
 
 }

--
Gitblit v1.9.3