From 9eed388bf3c07dc0ea24fb0637b4964c8e387437 Mon Sep 17 00:00:00 2001
From: Administrator <15274802129@163.com>
Date: Mon, 22 Dec 2025 16:45:43 +0800
Subject: [PATCH] fix(symbols): 修复K线数据获取逻辑
---
src/main/java/com/xcong/excoin/modules/newPrice/ResponseHandler.java | 66 +++++++++++++++++++++++++++++++++
1 files changed, 66 insertions(+), 0 deletions(-)
diff --git a/src/main/java/com/xcong/excoin/modules/newPrice/ResponseHandler.java b/src/main/java/com/xcong/excoin/modules/newPrice/ResponseHandler.java
new file mode 100644
index 0000000..53878e5
--- /dev/null
+++ b/src/main/java/com/xcong/excoin/modules/newPrice/ResponseHandler.java
@@ -0,0 +1,66 @@
+package com.xcong.excoin.modules.newPrice;
+
+
+import cn.hutool.json.JSONException;
+import com.xcong.excoin.common.exception.FebsException;
+import com.xcong.excoin.modules.newPrice.utils.JSONParser;
+import com.xcong.excoin.modules.newPrice.utils.OkHttpUtils;
+import okhttp3.Request;
+import okhttp3.Response;
+import okhttp3.ResponseBody;
+
+import java.io.IOException;
+
+public final class ResponseHandler {
+
+ private static final int HTTP_STATUS_CODE_400 = 400;
+ private static final int HTTP_STATUS_CODE_499 = 499;
+ private static final int HTTP_STATUS_CODE_500 = 500;
+
+ private ResponseHandler() {
+ }
+
+ public static String handleResponse(Request request, boolean showLimitUsage) {
+ try {
+ OkHttpUtils.builder();
+ try (Response response = OkHttpUtils.okHttpClient.newCall(request).execute()) {//OkHttpUtils.builder().okHttpClient
+ String responseAsString = getResponseBodyAsString(response.body());
+
+ if (response.code() >= HTTP_STATUS_CODE_400 && response.code() <= HTTP_STATUS_CODE_499) {
+ throw handleErrorResponse(responseAsString, response.code());
+ } else if (response.code() >= HTTP_STATUS_CODE_500) {
+ System.out.println("handleResponse:"+response.code());
+ throw new FebsException("responseAsString-"+responseAsString+";handleResponse-"+response.code());
+ }
+ return responseAsString;
+ // if (showLimitUsage) {
+ // return getlimitUsage(response, responseAsString);
+ // } else {
+ // return responseAsString;
+ // }
+ }
+ } catch (IOException | IllegalStateException e) {
+ e.printStackTrace();
+ throw new FebsException("[ResponseHandler] OKHTTP Error: " + e.getMessage());
+ }
+ }
+
+
+ private static FebsException handleErrorResponse(String responseBody, int responseCode) {
+ try {
+ String errorMsg = JSONParser.getJSONStringValue(responseBody, "msg");
+ int errorCode = JSONParser.getJSONIntValue(responseBody, "code");
+ return new FebsException("responseBody-"+responseBody+";errorMsg-"+errorMsg+";responseCode-"+responseCode+";errorCode-"+errorCode);
+ } catch (JSONException e) {
+ throw new FebsException("responseBody-"+responseBody+";responseCode-"+responseCode);
+ }
+ }
+
+ private static String getResponseBodyAsString(ResponseBody body) throws IOException {
+ if (null != body) {
+ return body.string();
+ } else {
+ return "";
+ }
+ }
+}
--
Gitblit v1.9.1