From 0d5d4a8c55b562090f1a1ac48cda7fcab943979b Mon Sep 17 00:00:00 2001
From: huangxiaoqiang <huangxiaoqiang@hnkhzn.com>
Date: 星期三, 15 十月 2025 15:48:40 +0800
Subject: [PATCH] 更新二进制文件及新增异步POST方法
---
CodeManagement/WMS/WIDESEA_WMSServer/WIDESEA_Common/HttpClient/HttpsClient.cs | 42 +++++++++++++++++++++++++++++++++++++++---
1 files changed, 39 insertions(+), 3 deletions(-)
diff --git a/CodeManagement/WMS/WIDESEA_WMSServer/WIDESEA_Common/HttpClient/HttpsClient.cs b/CodeManagement/WMS/WIDESEA_WMSServer/WIDESEA_Common/HttpClient/HttpsClient.cs
index 45446ff..4c93915 100644
--- a/CodeManagement/WMS/WIDESEA_WMSServer/WIDESEA_Common/HttpClient/HttpsClient.cs
+++ b/CodeManagement/WMS/WIDESEA_WMSServer/WIDESEA_Common/HttpClient/HttpsClient.cs
@@ -17,7 +17,7 @@
static HttpsClient()
{
// 璁剧疆瀹氭椂鍣紝姣�5鍒嗛挓娓呯悊涓�娆equestTracker鐨勬暟鎹�
- cleanupTimer = new Timer(5 * 60 * 1000);
+ cleanupTimer = new Timer(2 * 60 * 1000);
cleanupTimer.Elapsed += CleanupRequestTracker;
cleanupTimer.AutoReset = true;
cleanupTimer.Enabled = true;
@@ -68,7 +68,7 @@
// 妫�鏌ヨ姹傛鏁板拰鏃堕棿闄愬埗
if (requestTracker.TryGetValue(requestKey, out var requestInfo))
{
- if (requestInfo.Count >= 10 && DateTime.Now < requestInfo.LastRequestTime.AddMinutes(3))
+ if (requestInfo.Count >= 10 && DateTime.Now < requestInfo.LastRequestTime.AddMinutes(2))
{
// 濡傛灉璇锋眰娆℃暟瓒呰繃闄愬埗涓旀湭瓒呰繃10鍒嗛挓锛屾姏鍑哄紓甯�
Console.WriteLine("璇锋眰娆℃暟宸茶揪鍒伴檺鍒讹紝璇风◢鍚庡啀璇曘��");
@@ -89,6 +89,42 @@
}
+ // 璁板綍璇锋眰鍙傛暟
+ LogRequestParameters(parameters, url);
+
+ // 鍒涘缓HttpClient瀹炰緥
+ using (HttpClient client = new HttpClient())
+ {
+ // 灏嗗弬鏁拌浆鎹负FormUrlEncodedContent
+ string content = JsonConvert.SerializeObject(parameters);
+
+ //client.Timeout = TimeSpan.from;
+
+ var request = new HttpRequestMessage(HttpMethod.Post, url);
+
+ request.Content = new StringContent(content, Encoding.UTF8, "application/json");
+ //var content = new FormUrlEncodedContent(ConvertToKeyValuePairs(parameters));
+ //// 鍙戦�丳OST璇锋眰骞惰幏鍙栧搷搴�
+ //HttpResponseMessage response = await client.PostAsync(url, content);
+ HttpResponseMessage response = await client.SendAsync(request);
+
+ // 纭繚鍝嶅簲鎴愬姛
+ response.EnsureSuccessStatusCode();
+
+ // 璇诲彇鍝嶅簲鍐呭
+ string responseBody = await response.Content.ReadAsStringAsync();
+
+ // 璁板綍鍝嶅簲鍙傛暟
+ LogResponseParameters(responseBody, url);
+
+ // 杩斿洖鍝嶅簲鍐呭
+ return responseBody;
+ }
+ }
+
+ public static async Task<string> PostNotLimitAsync(string url, Dictionary<string, object> parameters)
+ {
+
// 璁板綍璇锋眰鍙傛暟
LogRequestParameters(parameters, url);
@@ -158,7 +194,7 @@
DateTime now = DateTime.Now;
// 閬嶅巻骞舵竻鐞唕equestTracker涓秴杩�10鍒嗛挓鐨勮褰�
- var keysToRemove = requestTracker.Keys.Where(key => now > requestTracker[key].LastRequestTime.AddMinutes(6)).ToList();
+ var keysToRemove = requestTracker.Keys.Where(key => now > requestTracker[key].LastRequestTime.AddMinutes(2)).ToList();
foreach (var key in keysToRemove)
{
--
Gitblit v1.9.3