From 5640bb39c2e3014cebeacf9a098cddced54b2c1d Mon Sep 17 00:00:00 2001 From: wjc <1243177876@qq.com> Date: 星期一, 09 十二月 2024 10:29:17 +0800 Subject: [PATCH] 2024年12月09日10:29:14 --- app/src/main/java/com/hdl/photovoltaic/internet/HttpClient.java | 110 +++++++++++++++++++++++++++++++++++++++++++++++++------ 1 files changed, 98 insertions(+), 12 deletions(-) diff --git a/app/src/main/java/com/hdl/photovoltaic/internet/HttpClient.java b/app/src/main/java/com/hdl/photovoltaic/internet/HttpClient.java index a74978c..ab3bab6 100644 --- a/app/src/main/java/com/hdl/photovoltaic/internet/HttpClient.java +++ b/app/src/main/java/com/hdl/photovoltaic/internet/HttpClient.java @@ -20,7 +20,10 @@ import com.hdl.photovoltaic.config.UserConfigManage; import com.hdl.photovoltaic.listener.BaseSuccessFailureCallBeak; import com.hdl.photovoltaic.listener.CloudCallBeak; +import com.hdl.photovoltaic.other.HdlESLocalJsonLogic; import com.hdl.photovoltaic.other.HdlLogLogic; +import com.hdl.photovoltaic.other.HdlThreadLogic; +import com.hdl.photovoltaic.utils.LocalManageUtil; import com.hdl.photovoltaic.utils.Md5Utils; import java.io.File; @@ -62,7 +65,91 @@ } /** - * 璇锋眰鏈嶅姟鍣� + * 鑾峰彇json璧勬簮鐢ㄧ殑 + * + * @param url 鍦板潃 + * @param callBack 鍥炶皟 + */ + public void requestJsonHttpGet(String url, CloudCallBeak<String> callBack) { + if (TextUtils.isEmpty(url)) { + if (callBack != null) { + callBack.onSuccess(""); + } + } + + HdlThreadLogic.runSubThread(new Runnable() { + @Override + public void run() { + OkHttpClient client = new OkHttpClient(); + Request request = new Request.Builder() + .url(url) + .addHeader("Accept-Language", UserConfigManage.getInstance().getCurrentAppLanguage()) + .build(); + + try (Response response = client.newCall(request).execute()) { + if (response.isSuccessful()) { + if (response.body() == null) { + if (callBack != null) { + callBack.onSuccess(""); + } + } else { + String str = response.body().string(); + if (callBack != null) { + callBack.onSuccess(str); + } + } + + } else { + if (callBack != null) { + callBack.onSuccess(""); + } + } + } catch (Exception e) { + if (callBack != null) { + callBack.onFailure(new HDLException(-20002, e.getMessage())); + } + } + } + }); + + } + + + /** + * 璇锋眰鏈嶅姟鍣�(get) + * 搴曞眰鏂规硶,寮曠敤搴撶殑鏂规硶 + * + * @param requestUrl 璇锋眰缁濆鍦板潃鎺ュ彛 + * @param callBack 鍥炶皟 + * @return - + */ + private Disposable requestGet(String requestUrl, CloudCallBeak<String> callBack) { + HdlLogLogic.print("http---鍙戦��---" + requestUrl + "\r\n", isAddToMemory); + //寮�鍙戠幆澧冮渶瑕佸姞(鐢ㄦ潵鍖哄垎onpro鍜屽厜浼廰pp浠g爜):HxHttp.builder().headers("x-lbs-version", "hdl-yt") + return HxHttp.builder().url(requestUrl).build().get().subscribeWith(new HDLResponse<String>() { + @Override + public void onResponse(String str) { + if (callBack != null) { + callBack.onSuccess(str); +// System.out.println("http---鍥炲---" + requestUrl + "\r\n" + gson.fromJson(str, JsonObject.class).toString()); + HdlLogLogic.print("http---鍥炲---" + requestUrl + "\r\n" + str, isAddToMemory); + } + } + + @Override + public void onFailure(HDLException e) { + HDLExceptionSubmitUtils.submit(requestUrl, "", e); + if (callBack != null) { + callBack.onFailure(e); + HdlLogLogic.print("http---鍥炲---" + requestUrl + "\r\n" + "\"{code=\"" + e.getCode() + "," + "\"message=\"" + e.getMsg() + "}", isAddToMemory); + } + } + }); + + } + + /** + * 璇锋眰鏈嶅姟鍣�(post) * 搴曞眰鏂规硶,寮曠敤搴撶殑鏂规硶 * * @param api 璇锋眰鎺ュ彛 @@ -166,9 +253,18 @@ }); } + /** + * 璇锋眰(get)鏈嶅姟鍣� + * + * @param requestUrl 璇锋眰缁濆鍦板潃鎺ュ彛 + * @param callBack 鍥炶皟 + */ + public Disposable requestHttpGet(String requestUrl, CloudCallBeak<String> callBack) { + return requestGet(requestUrl, callBack); + } /** - * 璇锋眰鏈嶅姟鍣� + * 璇锋眰(post)鏈嶅姟鍣� * * @param api 璇锋眰鎺ュ彛 * @param body 璇锋眰鍙傛暟(json) @@ -216,16 +312,6 @@ @Deprecated private void requestFullHttp(String fullUrl, String json, boolean isBasicService, boolean isExecute, BaseSuccessFailureCallBeak baseSuccessCallBeak) { this.requestHttpServer(fullUrl, json, isBasicService, isExecute, baseSuccessCallBeak); - } - - /** - * get鏂规硶璇锋眰 - * - * @param url http鍦板潃 - * @param cloudCallBeak 鍥炶皟 - */ - public void requestHttpGet(String url, CloudCallBeak<String> cloudCallBeak) { - this.requestHttpServer(url, cloudCallBeak); } -- Gitblit v1.8.0