From c8c33200e43f05136eca9fc8ff4942f8def31cc6 Mon Sep 17 00:00:00 2001
From: JLChen <551775569@qq.com>
Date: 星期三, 18 八月 2021 10:45:40 +0800
Subject: [PATCH] 2021-08-18 1.完善Android对接LinphoneSDK 2.完善SIP相关接口对接

---
 HDL_ON/DAL/Server/HttpUtil.cs |   83 ++++++++++++++++++++++++++---------------
 1 files changed, 52 insertions(+), 31 deletions(-)

diff --git a/HDL_ON/DAL/Server/HttpUtil.cs b/HDL_ON/DAL/Server/HttpUtil.cs
index 2c6b1d8..0dec30c 100644
--- a/HDL_ON/DAL/Server/HttpUtil.cs
+++ b/HDL_ON/DAL/Server/HttpUtil.cs
@@ -13,10 +13,13 @@
     {
 
         #region **********鍏ㄥ眬甯搁噺**********
-        ///// <summary>
-        ///// API_HTTPS
-        ///// </summary>
-        //public const string API_HTTPS = "https://";
+        /// <summary>
+        /// 鍥哄畾鍩熷悕,姝e紡鐜
+        /// 鍏叡鍩熷悕灏辫繎瑙f瀽
+        /// 
+        /// </summary>
+        //public const string GlobalRequestHttpsHost = "https://nearest.hdlcontrol.com";
+        public const string GlobalRequestHttpsHost = "https://test-gz.hdlcontrol.com";//mmmm
         /// <summary>
         /// RegionMark
         /// </summary>
@@ -37,11 +40,6 @@
         #endregion
 
         #region **********缃戠粶璇锋眰灏佽**********
-        /// <summary>
-        /// 鍥哄畾鍩熷悕,姝e紡鐜
-        /// </summary>
-        //public const string GlobalRequestHttpsHost = "https://nearest.hdlcontrol.com";
-        public const string GlobalRequestHttpsHost = "https://test-gz.hdlcontrol.com";
 
         /// <summary>
         ///  Get  璇锋眰鏈嶅姟鍣ㄦ柟娉�
@@ -95,7 +93,7 @@
         /// <returns></returns>
         public static ResponsePackNew RequestHttpsPostFroHome(string apiPath, string bodyParameterJson, int mTimeout = 10)
         {
-            string urlHead = DB_ResidenceData.residenceData.residecenInfo.regionUrl;
+            string urlHead = DB_ResidenceData.Instance.CurrentRegion.regionUrl;
             //var replaceToken = "";
             //if (DB_ResidenceData.residenceData.residecenInfo.IsOthreShare)
             //{
@@ -148,6 +146,12 @@
         /// <returns></returns>
         static ResponsePackNew RequestHttpsBase(Method method, string apiPath, string bodyParameterJson = null, Dictionary<string, object> queryDictionary = null, Dictionary<string, object> urlSegmentDictionary = null, string urlHead = "", string replaceToken = "", int mTimeout = 10)
         {
+            //Dome妯″紡鐧诲綍
+
+            if(MainPage.NoLoginMode)
+            {
+                return new ResponsePackNew() { Code = "0" };
+            }
             #region HttpWebRequest
             try
             {
@@ -158,10 +162,6 @@
                 }
                 string requestFullUrl = urlHead + apiPath;
 
-
-                ////**************娴嬭瘯**************
-                //string requestFullUrl = GlobalRequestHttpsHost + apiPath;
-                ////**************娴嬭瘯**************
 
                 RestClient client = new RestClient(requestFullUrl);
 
@@ -212,7 +212,7 @@
                         //*****涓�浜涘垽绌哄鐞�*****************
                         if (revertObj.Code == null)
                         {
-                            revertObj.Code = "DATA_EXCEPTION";
+                            revertObj.Code = StateCode.DATA_EXCEPTION;
                         }
 
                         if (revertObj.Data == null)
@@ -226,20 +226,20 @@
                     catch (Exception ex)
                     {
                         HDL_ON.Utlis.WriteLine(ex.Message);
-                        return new ResponsePackNew() { Code = "DATA_EXCEPTION" };
+                        return new ResponsePackNew() { Code = StateCode.DATA_EXCEPTION };
                     }
                 }
                 else
                 {
                     HDL_ON.Utlis.WriteLine(response.Content);
-                    return new ResponsePackNew() { Code = "NETWORK_ERROR" };
+                    return new ResponsePackNew() { Code = StateCode.NETWORK_ERROR };
                 }
 
             }
             catch (Exception ex)
             {
                 HDL_ON.Utlis.WriteLine(ex.Message);
-                return new ResponsePackNew() { Code = "NETWORK_ERROR" };
+                return new ResponsePackNew() { Code = StateCode.NETWORK_ERROR };
             }
 
             #endregion
@@ -280,7 +280,7 @@
 
 
         /// <summary>
-        /// 鍒锋柊Token
+        /// 鍒锋柊  Token
         /// </summary>
         /// <returns></returns>
         static bool RefreshToken()
@@ -329,10 +329,6 @@
                     urlHead = OnAppConfig.Instance.RequestHttpsHost;
                 }
                 string requestFullUrl = urlHead + apiPath;
-
-                ////**************娴嬭瘯**************
-                //string requestFullUrl = GlobalRequestHttpsHost + apiPath;
-                ////**************娴嬭瘯**************
 
                 RestClient client = new RestClient(requestFullUrl);
                 RestRequest request = new RestRequest(Method.POST);
@@ -453,7 +449,7 @@
                         revertObj = Newtonsoft.Json.JsonConvert.DeserializeObject<ResponsePackNew>(response.Content);
                         if (revertObj.Code == null)
                         {
-                            revertObj.Code = "DATA_EXCEPTION";
+                            revertObj.Code = StateCode.DATA_EXCEPTION;
                         }
                         ////缁熶竴杞垚澶у啓
                         //revertObj.StateCode = revertObj.StateCode.ToUpper ();
@@ -462,20 +458,20 @@
                     catch (Exception ex)
                     {
                         HDL_ON.Utlis.WriteLine(ex.Message);
-                        return new ResponsePackNew() { Code = "DATA_EXCEPTION" };
+                        return new ResponsePackNew() { Code = StateCode.DATA_EXCEPTION };
                     }
                 }
                 else
                 {
                     HDL_ON.Utlis.WriteLine(response.Content);
-                    return new ResponsePackNew() { Code = "NETWORK_ERROR" };
+                    return new ResponsePackNew() { Code = StateCode.NETWORK_ERROR };
                 }
 
             }
             catch (Exception ex)
             {
                 HDL_ON.Utlis.WriteLine(ex.Message);
-                return new ResponsePackNew() { Code = "NETWORK_ERROR" };
+                return new ResponsePackNew() { Code = StateCode.NETWORK_ERROR };
             }
 
             #endregion
@@ -551,19 +547,36 @@
             }
             return signstr.ToLower();
         }
-
+        /// <summary>
+        /// 鍒ゆ柇褰撳墠鍊兼槸鍚﹂渶瑕佸弬涓庣鍚嶏紝淇濇寔璺熶簯绔竴鑷�
+        /// 绌哄瓧绗︿覆涓嶅弬涓�
+        /// 鏁扮粍,闆嗗悎,瀵硅薄涓嶅弬涓�
+        /// </summary>
+        /// <param name="valueStr"></param>
+        /// <returns></returns>
+        static bool IfValueNeedSign(string valueStr)
+        {
+            if (string.IsNullOrEmpty(valueStr) || valueStr.StartsWith("{") || valueStr.StartsWith("["))
+            {
+                return false;
+            }
+            return true;
+        }
         /// <summary>
         /// 2020-11-02
         /// 鍩虹鏈嶅姟鐨勬帴鍙i兘瑕佹牎楠宻ign
         /// 璁$畻sign绛惧悕
         /// </summary>
         /// <returns></returns>
-        public static string GetSignRequestJson(object requestObj)
+        public static string GetSignRequestJson(object requestObj,Dictionary<string,object> paramDictionary = null)
         {
             try
             {
                 //1. 灏唌odel瀹炰綋杞负Dictionary<string, object>
-                var paramDictionary = Newtonsoft.Json.JsonConvert.DeserializeObject<Dictionary<string, object>>(Newtonsoft.Json.JsonConvert.SerializeObject(requestObj));
+                if (paramDictionary == null)
+                {
+                    paramDictionary = Newtonsoft.Json.JsonConvert.DeserializeObject<Dictionary<string, object>>(Newtonsoft.Json.JsonConvert.SerializeObject(requestObj));
+                }
                 //2. 璁$畻sign
                 if (paramDictionary != null)
                 {
@@ -579,7 +592,10 @@
                         if (item.Value != null)
                         {
                             //Value.ToString()涓簄ull鎴栬��""涔熶笉鍙傚姞鏍¢獙
-                            if (!string.IsNullOrEmpty(item.Value.ToString()))
+                            //if (!string.IsNullOrEmpty(item.Value.ToString()) && (item.Value is string || item.Value.GetType().IsValueType))
+                            //{
+                            //妫�娴嬪綋鍓嶅弬鏁版槸鍚﹂渶瑕佸弬涓庢牎楠�
+                            if (IfValueNeedSign(item.Value.ToString()))
                             {
                                 //濡傛灉鏄痓ool绫诲瀷锛岃杞皬鍐�
                                 if (item.Value is bool)
@@ -637,6 +653,11 @@
         /// </summary>
         public string message;
 
+        /// <summary>
+        /// 杩欎釜鏄姹傞敊璇椂鐨勬墿灞曟暟鎹�,浠ュ悗鎵�鏈夌殑闄勫甫鎵╁睍鏁版嵁閮戒細鏀惧湪杩欓噷闈㈠姩鎬佺淮鎶�
+        /// </summary>
+        public object extra;
+
         ///// <summary>
         ///// isSuccess
         ///// </summary>

--
Gitblit v1.8.0