From 16749e23b489ee24f993fe9e87346680b7bcf63a Mon Sep 17 00:00:00 2001
From: huangxiaoqiang <huangxiaoqiang@hnkhzn.com>
Date: 星期五, 10 十月 2025 21:14:49 +0800
Subject: [PATCH] 代码提交

---
 项目代码/WCS/WIDESEAWCS_Server/WIDESEAWCS_Core/Helper/HttpHelper.cs |   96 ++++++++++++++++++++++++++++++++++--------------
 1 files changed, 68 insertions(+), 28 deletions(-)

diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Core/Helper/HttpHelper.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Core/Helper/HttpHelper.cs"
index 91f38e6..8feaf5c 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Core/Helper/HttpHelper.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Core/Helper/HttpHelper.cs"
@@ -4,12 +4,15 @@
 using System.Collections.Generic;
 using System.Linq;
 using System.Net.Http.Headers;
+using System.Reflection.Metadata;
 using System.Security.Policy;
 using System.Text;
 using System.Threading.Tasks;
+using WIDESEAWCS_Core.LogHelper;
 
 namespace WIDESEAWCS_Core.Helper
 {
+    
     public class HttpHelper
     {
         public static async Task<string> GetAsync(string serviceAddress, Dictionary<string, object> parameters, string contentType = "application/json", Dictionary<string, string>? headers = null)
@@ -47,36 +50,38 @@
         {
             try
             {
-                if (serviceAddress.Contains("http://c24-cellmi3:12020"))
-                {
-                    // 灏� JSON 瀛楃涓茶浆鎹负瀛楀吀
-                    var parameters = JsonConvert.DeserializeObject<Dictionary<string, object>>(requestJson);
+                //if (serviceAddress.Contains("http://c24-cellmi3:12020"))
+                //{
+                //    // 灏� JSON 瀛楃涓茶浆鎹负瀛楀吀
+                //    var parameters = JsonConvert.DeserializeObject<Dictionary<string, object>>(requestJson);
 
-                    // 鍒涘缓涓�涓柊鐨勫瓧鍏革紝鎺掗櫎 RequestTime 鍜� SessionId
-                    var filteredParameters = parameters.Where(p => p.Key != "RequestTime" && p.Key != "SessionId").ToDictionary(p => p.Key, p => p.Value);
+                //    // 鍒涘缓涓�涓柊鐨勫瓧鍏革紝鎺掗櫎 RequestTime 鍜� SessionId
+                //    var filteredParameters = parameters.Where(p => p.Key != "RequestTime" && p.Key != "SessionId").ToDictionary(p => p.Key, p => p.Value);
 
-                    string requestKey = $"{serviceAddress}:{JsonConvert.SerializeObject(filteredParameters)}";
+                //    string requestKey = $"{serviceAddress}:{JsonConvert.SerializeObject(filteredParameters)}";
 
-                    // 妫�鏌ヨ姹傛鏁板拰鏃堕棿闄愬埗
-                    if (requestTracker.TryGetValue(requestKey, out var requestInfo))
-                    {
-                        if (requestInfo.Count >= 5 && DateTime.Now < requestInfo.LastRequestTime.AddMinutes(3))
-                        {
-                            // 濡傛灉璇锋眰娆℃暟瓒呰繃闄愬埗涓旀湭瓒呰繃10鍒嗛挓锛屾姏鍑哄紓甯�
-                            throw new InvalidOperationException("璇锋眰娆℃暟宸茶揪鍒伴檺鍒讹紝璇风◢鍚庡啀璇曘��");
-                        }
-                    }
+                //    // 妫�鏌ヨ姹傛鏁板拰鏃堕棿闄愬埗
+                //    if (requestTracker.TryGetValue(requestKey, out var requestInfo))
+                //    {
+                //        if (requestInfo.Count >= 5 && DateTime.Now < requestInfo.LastRequestTime.AddMinutes(3))
+                //        {
+                //            // 濡傛灉璇锋眰娆℃暟瓒呰繃闄愬埗涓旀湭瓒呰繃10鍒嗛挓锛屾姏鍑哄紓甯�
+                //            throw new InvalidOperationException("璇锋眰娆℃暟宸茶揪鍒伴檺鍒讹紝璇风◢鍚庡啀璇曘��");
+                //        }
+                //    }
 
-                    // 鏇存柊璇锋眰璺熻釜淇℃伅
-                    if (requestTracker.ContainsKey(requestKey))
-                    {
-                        requestTracker[requestKey] = (requestInfo.Count + 1, DateTime.Now);
-                    }
-                    else
-                    {
-                        requestTracker[requestKey] = (1, DateTime.Now);
-                    }
-                }
+                //    // 鏇存柊璇锋眰璺熻釜淇℃伅
+                //    if (requestTracker.ContainsKey(requestKey))
+                //    {
+                //        requestTracker[requestKey] = (requestInfo.Count + 1, DateTime.Now);
+                //    }
+                //    else
+                //    {
+                //        requestTracker[requestKey] = (1, DateTime.Now);
+                //    }
+                //}
+                LogRequestParameters(requestJson, serviceAddress);
+
                 string result = string.Empty;
                 using (HttpContent httpContent = new StringContent(requestJson))
                 {
@@ -91,11 +96,14 @@
                     }
                     result = await httpClient.PostAsync(serviceAddress, httpContent).Result.Content.ReadAsStringAsync();
                 }
+                LogResponseParameters(result, serviceAddress);
+
                 return result;
             }
-            catch (Exception e)
+            catch (Exception ex)
             {
-                Console.WriteLine(e.Message);
+                LogErrorParameters(ex.StackTrace, ex.Message, serviceAddress);
+                Console.WriteLine(ex.Message);
             }
             return null;
         }
@@ -145,5 +153,37 @@
             }
             return null;
         }
+
+        private static void LogErrorParameters(string errordetail, string error, string url = "")
+        {
+            StringBuilder builder = new StringBuilder();
+            builder.Append(Environment.NewLine);
+            builder.Append("---------------------------------------------");
+            builder.Append(Environment.NewLine);
+            builder.Append("url:" + url + "寮傚父璇︾粏淇℃伅: " + JsonConvert.SerializeObject(error));
+            builder.Append("url:" + url + "寮傚父淇℃伅: " + JsonConvert.SerializeObject(error));
+            LogAPI.WriteInfo($"API鎺ュ彛", $"{builder}");
+        }
+        private static void LogRequestParameters(string parameters, string url = "")
+        {
+            StringBuilder builder = new StringBuilder();
+            builder.Append(Environment.NewLine);
+            builder.Append("---------------------------------------------");
+            builder.Append(Environment.NewLine);
+            builder.Append("url:" + url + "璇锋眰鍙傛暟: " + JsonConvert.SerializeObject(parameters));
+            LogAPI.WriteInfo($"API鎺ュ彛", $"{builder}");
+        }
+
+        private static void LogResponseParameters(string responseBody, string url = "")
+        {
+            StringBuilder builder = new StringBuilder();
+            builder.Append(Environment.NewLine);
+            builder.Append("url:" + url + "鍝嶅簲鍙傛暟: " + responseBody);
+            builder.Append(Environment.NewLine);
+            builder.Append("---------------------------------------------");
+            builder.Append(Environment.NewLine);
+
+            LogAPI.WriteInfo($"API鎺ュ彛", $"{builder}");
+        }
     }
 }

--
Gitblit v1.9.3