From 6e9f630e4e12738d98241b684e6227e02010b6c5 Mon Sep 17 00:00:00 2001
From: Huangxiaoqiang-03 <1247017146@qq.com>
Date: 星期五, 01 十一月 2024 17:30:30 +0800
Subject: [PATCH] 1

---
 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_Core/Helper/HttpHelper.cs |   56 +++++++++++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 55 insertions(+), 1 deletions(-)

diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_Core/Helper/HttpHelper.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_Core/Helper/HttpHelper.cs"
index 77224e9..da9e300 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_Core/Helper/HttpHelper.cs"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_Core/Helper/HttpHelper.cs"
@@ -1,9 +1,13 @@
-锘縰sing System;
+锘縰sing Microsoft.Extensions.Logging;
+using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 using System.Linq;
+using System.Net;
 using System.Net.Http.Headers;
 using System.Text;
 using System.Threading.Tasks;
+using WIDESEA_Core.LogHelper;
 
 namespace WIDESEA_Core.Helper
 {
@@ -100,5 +104,55 @@
             }
             return null;
         }
+
+        public static T Post<T>(string url, object parm, string rquestName = "") where T : class
+        {
+            HttpWebResponse response = null;
+            StreamReader resultReader = null;
+            string responseContent = string.Empty;
+            try
+            {
+                HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
+                request.Timeout = 10 * 1000;
+                request.Method = "POST";
+                request.ContentType = "application/json; charset=UTF-8";
+                parm = parm ?? "";
+                byte[] data = Encoding.UTF8.GetBytes(JsonConvert.SerializeObject(parm));
+                request.ContentLength = data.Length;
+                using (Stream newStream = request.GetRequestStream())
+                {
+                    newStream.Write(data, 0, data.Length);
+                };
+
+                response = (HttpWebResponse)request.GetResponse();
+                Stream webStream = response.GetResponseStream();
+                if (webStream == null)
+                {
+                    throw new Exception("Network error");
+                }
+
+                int statsCode = (int)response.StatusCode;
+                resultReader = new StreamReader(webStream, Encoding.UTF8);
+                responseContent = resultReader.ReadToEnd();
+
+                if (response != null)
+                    response.Close();
+                if (resultReader != null)
+                    resultReader.Close();
+
+                if (statsCode != 200)
+                {
+                    throw new Exception("寮傚父锛屽搷搴旂爜锛�" + statsCode.ToString());
+                }
+
+                Logger.Write_Log("System/API璇锋眰", rquestName, "璇锋眰鎴愬姛", new { 璇锋眰鎶ユ枃 = parm, 鎺ユ敹鎶ユ枃 = responseContent });
+                return JsonConvert.DeserializeObject<T>(responseContent);
+            }
+            catch (Exception ex)
+            {
+                Logger.Write_Log("System/API璇锋眰", rquestName, "璇锋眰寮傚父", new { 璇锋眰鎶ユ枃 = parm, 鎺ユ敹鎶ユ枃 = responseContent, 閿欒 = ex.Message });
+                throw ex;
+            }
+        }
     }
 }

--
Gitblit v1.9.3