From ef1cfae3cce9fd0a6ef3c3d94d60ca641cc30f6f Mon Sep 17 00:00:00 2001 From: JLChen <551775569@qq.com> Date: 星期四, 14 一月 2021 17:58:57 +0800 Subject: [PATCH] 2021-01-14 1.增加判断当前值是否需要参与签名方法,保持跟云端一致 --- Crabtree/SmartHome/HDL/Common/HttpUtil/HttpUtil.cs | 387 +++++++++++++++++++++++-------------------------------- 1 files changed, 163 insertions(+), 224 deletions(-) diff --git a/Crabtree/SmartHome/HDL/Common/HttpUtil/HttpUtil.cs b/Crabtree/SmartHome/HDL/Common/HttpUtil/HttpUtil.cs index d391493..8308e82 100644 --- a/Crabtree/SmartHome/HDL/Common/HttpUtil/HttpUtil.cs +++ b/Crabtree/SmartHome/HDL/Common/HttpUtil/HttpUtil.cs @@ -55,9 +55,9 @@ /// <param name="replaceToken"></param> /// <param name="mTimeout"></param> /// <returns></returns> - public static ResponsePackNew RequestHttpsGet(string apiPath, Dictionary<string, object> queryDictionary = null, Dictionary<string, object> urlSegmentDictionary = null, string urlHead = "", string replaceToken = "", int mTimeout = 10) + public static ResponsePackNew RequestHttpsGet (string apiPath, Dictionary<string, object> queryDictionary = null, Dictionary<string, object> urlSegmentDictionary = null, string urlHead = "", string replaceToken = "", int mTimeout = 10) { - return RequestHttps(Method.GET, apiPath, null, queryDictionary, urlSegmentDictionary, urlHead, replaceToken, mTimeout); + return RequestHttps (Method.GET, apiPath, null, queryDictionary, urlSegmentDictionary, urlHead, replaceToken, mTimeout); } ///// <summary> @@ -95,7 +95,7 @@ /// <param name="bodyParameterJson"></param> /// <param name="mTimeout"></param> /// <returns></returns> - public static ResponsePackNew RequestHttpsPostFroHome(string apiPath, string bodyParameterJson, int mTimeout = 10) + public static ResponsePackNew RequestHttpsPostFroHome (string apiPath, string bodyParameterJson, int mTimeout = 10) { //string urlHead2 = UserConfig.Instance.CurrentRegion.regionUrl; string urlHead = GlobalRequestHttpsHost; @@ -104,7 +104,7 @@ //{ // replaceToken = DB_ResidenceData.residenceData.MasterToken; //} - return RequestHttps(Method.POST, apiPath, bodyParameterJson, null, null, urlHead, "", mTimeout); + return RequestHttps (Method.POST, apiPath, bodyParameterJson, null, null, urlHead, "", mTimeout); } /// <summary> @@ -117,9 +117,9 @@ /// <param name="replaceToken"></param> /// <param name="mTimeout"></param> /// <returns></returns> - public static ResponsePackNew RequestHttpsPost(string apiPath, string bodyParameterJson, string urlHead = "", string replaceToken = "", int mTimeout = 10) + public static ResponsePackNew RequestHttpsPost (string apiPath, string bodyParameterJson, string urlHead = "", string replaceToken = "", int mTimeout = 10) { - return RequestHttps(Method.POST, apiPath, bodyParameterJson, null, null, urlHead, replaceToken, mTimeout); + return RequestHttps (Method.POST, apiPath, bodyParameterJson, null, null, urlHead, replaceToken, mTimeout); } /// <summary> @@ -132,9 +132,9 @@ /// <param name="replaceToken"></param> /// <param name="mTimeout"></param> /// <returns></returns> - public static ResponsePackNew RequestHttpsPost(string apiPath, Dictionary<string, object> queryDictionary, string urlHead = "", string replaceToken = "", int mTimeout = 10) + public static ResponsePackNew RequestHttpsPost (string apiPath, Dictionary<string, object> queryDictionary, string urlHead = "", string replaceToken = "", int mTimeout = 10) { - return RequestHttps(Method.POST, apiPath, null, queryDictionary, null, urlHead, replaceToken, mTimeout); + return RequestHttps (Method.POST, apiPath, null, queryDictionary, null, urlHead, replaceToken, mTimeout); } /// <summary> @@ -149,14 +149,12 @@ /// <param name="replaceToken"></param> /// <param name="mTimeout"></param> /// <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) + 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) { #region HttpWebRequest - try - { + try { - if (string.IsNullOrEmpty(urlHead)) - { + if (string.IsNullOrEmpty (urlHead)) { urlHead = GlobalRequestHttpsHost; } string requestFullUrl = urlHead + apiPath; @@ -166,83 +164,64 @@ //string requestFullUrl = GlobalRequestHttpsHost + apiPath; ////**************娴嬭瘯************** - RestClient client = new RestClient(requestFullUrl); + RestClient client = new RestClient (requestFullUrl); - RestRequest request = new RestRequest(method); + RestRequest request = new RestRequest (method); request.Timeout = mTimeout * 1000; - request.AddHeader("content-type", "application/json"); + request.AddHeader ("content-type", "application/json"); - if (string.IsNullOrEmpty(replaceToken)) - { - if(MainPage.LoginUser != null) - {/* 濡傛灉涓嶉渶瑕侀獙璇乀oken鍙互涓嶇敤浼犲叆 */ - request.AddHeader("Authorization", MainPage.LoginUser.LoginTokenString); + if (string.IsNullOrEmpty (replaceToken)) { + if (MainPage.LoginUser != null) {/* 濡傛灉涓嶉渶瑕侀獙璇乀oken鍙互涓嶇敤浼犲叆 */ + request.AddHeader ("Authorization", MainPage.LoginUser.LoginTokenString); } - } - else - { - request.AddHeader("Authorization", replaceToken); - } - - if (bodyParameterJson != null) - { - request.AddParameter("application/json", bodyParameterJson, ParameterType.RequestBody); + } else { + request.AddHeader ("Authorization", replaceToken); } - if (queryDictionary != null) - { - foreach (var data in queryDictionary) - { - request.AddQueryParameter(data.Key, data.Value.ToString()); + if (bodyParameterJson != null) { + request.AddParameter ("application/json", bodyParameterJson, ParameterType.RequestBody); + } + + if (queryDictionary != null) { + foreach (var data in queryDictionary) { + request.AddQueryParameter (data.Key, data.Value.ToString ()); } } - if (urlSegmentDictionary != null) - { - foreach (var data in urlSegmentDictionary) - { - request.AddUrlSegment(data.Key, data.Value.ToString()); + if (urlSegmentDictionary != null) { + foreach (var data in urlSegmentDictionary) { + request.AddUrlSegment (data.Key, data.Value.ToString ()); } } - IRestResponse response = client.Execute(request); - if (response.StatusCode == HttpStatusCode.OK) - { - try - { - ResponsePackNew revertObj = new ResponsePackNew() { }; - revertObj = Newtonsoft.Json.JsonConvert.DeserializeObject<ResponsePackNew>(response.Content); + IRestResponse response = client.Execute (request); + if (response.StatusCode == HttpStatusCode.OK) { + try { + ResponsePackNew revertObj = new ResponsePackNew () { }; + revertObj = Newtonsoft.Json.JsonConvert.DeserializeObject<ResponsePackNew> (response.Content); //*****涓�浜涘垽绌哄鐞�***************** - if (revertObj.Code == null) - { + if (revertObj.Code == null) { revertObj.Code = StateCode.DATA_EXCEPTION; } - if (revertObj.Data == null) - { + if (revertObj.Data == null) { revertObj.Data = ""; } //*****涓�浜涘垽绌哄鐞�***************** return revertObj; + } catch (Exception ex) { + Utlis.WriteLine (ex.Message); + return new ResponsePackNew () { Code = StateCode.DATA_EXCEPTION }; } - catch (Exception ex) - { - Utlis.WriteLine(ex.Message); - return new ResponsePackNew() { Code = StateCode.DATA_EXCEPTION }; - } - } - else - { - Utlis.WriteLine(response.Content); - return new ResponsePackNew() { Code = StateCode.NETWORK_ERROR }; + } else { + Utlis.WriteLine (response.Content); + return new ResponsePackNew () { Code = StateCode.NETWORK_ERROR }; } - } - catch (Exception ex) - { - Utlis.WriteLine(ex.Message); - return new ResponsePackNew() { Code = StateCode.NETWORK_ERROR }; + } catch (Exception ex) { + Utlis.WriteLine (ex.Message); + return new ResponsePackNew () { Code = StateCode.NETWORK_ERROR }; } #endregion @@ -262,18 +241,15 @@ /// <param name="replaceToken"></param> /// <param name="mTimeout"></param> /// <returns></returns> - public static ResponsePackNew RequestHttps(Method method, string apiPath, string bodyParameterJson = null, Dictionary<string, object> queryDictionary = null, Dictionary<string, object> urlSegmentDictionary = null, string urlHead = "", string replaceToken = "", int mTimeout = 10) + public static ResponsePackNew RequestHttps (Method method, string apiPath, string bodyParameterJson = null, Dictionary<string, object> queryDictionary = null, Dictionary<string, object> urlSegmentDictionary = null, string urlHead = "", string replaceToken = "", int mTimeout = 10) { - var responsePackNew = RequestHttpsBase(method, apiPath, bodyParameterJson, queryDictionary, urlSegmentDictionary, urlHead, replaceToken, mTimeout); + var responsePackNew = RequestHttpsBase (method, apiPath, bodyParameterJson, queryDictionary, urlSegmentDictionary, urlHead, replaceToken, mTimeout); //*****************Token杩囨湡澶勭悊***************** - if (responsePackNew.Code == StateCode.TOKEN_EXPIRED) - { + if (responsePackNew.Code == StateCode.TOKEN_EXPIRED) { //鍒锋柊Token - if (RefreshToken()) { - return RequestHttpsBase(method, apiPath, bodyParameterJson, queryDictionary, urlSegmentDictionary, urlHead, replaceToken, mTimeout); - } - else - { + if (RefreshToken ()) { + return RequestHttpsBase (method, apiPath, bodyParameterJson, queryDictionary, urlSegmentDictionary, urlHead, replaceToken, mTimeout); + } else { return responsePackNew; } } @@ -286,28 +262,23 @@ /// 鍒锋柊Token /// </summary> /// <returns></returns> - static bool RefreshToken() + static bool RefreshToken () { - try - { - var requestJson = GetSignRequestJson(new RefreshTokenObj() - { + try { + var requestJson = GetSignRequestJson (new RefreshTokenObj () { refreshToken = MainPage.LoginUser.RefreshToken, }); - var revertObj = RequestHttpsBase(Method.POST, NewAPI.API_POST_Login, requestJson); - if (revertObj.Code == StateCode.SUCCESS) - { - var revertData = Newtonsoft.Json.JsonConvert.DeserializeObject<UserLoginRes>(revertObj.Data.ToString()); + var revertObj = RequestHttpsBase (Method.POST, NewAPI.API_POST_Login, requestJson); + if (revertObj.Code == StateCode.SUCCESS) { + var revertData = Newtonsoft.Json.JsonConvert.DeserializeObject<UserLoginRes> (revertObj.Data.ToString ()); MainPage.LoginUser.LoginTokenString = revertData.headerPrefix + revertData.accessToken; MainPage.LoginUser.RefreshToken = revertData.refreshToken; MainPage.LoginUser.LastTime = DateTime.Now; - MainPage.LoginUser.SaveUserInfo(); + MainPage.LoginUser.SaveUserInfo (); return true; } return false; - } - catch - { + } catch { return false; } } @@ -322,13 +293,11 @@ /// <param name="replaceToken"></param> /// <param name="mTimeout"></param> /// <returns></returns> - public static byte[] RequestHttpsDownload(string apiPath, string bodyParameterJson = null, Dictionary<string, object> queryDictionary = null, string urlHead = "", string replaceToken = "", int mTimeout = 20) + public static byte [] RequestHttpsDownload (string apiPath, string bodyParameterJson = null, Dictionary<string, object> queryDictionary = null, string urlHead = "", string replaceToken = "", int mTimeout = 20) { #region RestRequest - try - { - if (string.IsNullOrEmpty(urlHead)) - { + try { + if (string.IsNullOrEmpty (urlHead)) { urlHead = GlobalRequestHttpsHost; } string requestFullUrl = urlHead + apiPath; @@ -337,42 +306,33 @@ //string requestFullUrl = GlobalRequestHttpsHost + apiPath; ////**************娴嬭瘯************** - RestClient client = new RestClient(requestFullUrl); - RestRequest request = new RestRequest(Method.POST); + RestClient client = new RestClient (requestFullUrl); + RestRequest request = new RestRequest (Method.POST); request.Timeout = mTimeout * 1000; - request.AddHeader("content-type", "application/json"); + request.AddHeader ("content-type", "application/json"); - if (string.IsNullOrEmpty(replaceToken)) - { - if ( MainPage.LoginUser != null) - {/* 濡傛灉涓嶉渶瑕侀獙璇乀oken鍙互涓嶇敤浼犲叆 */ - request.AddHeader("Authorization", MainPage.LoginUser.LoginTokenString); + if (string.IsNullOrEmpty (replaceToken)) { + if (MainPage.LoginUser != null) {/* 濡傛灉涓嶉渶瑕侀獙璇乀oken鍙互涓嶇敤浼犲叆 */ + request.AddHeader ("Authorization", MainPage.LoginUser.LoginTokenString); } - } - else - { - request.AddHeader("Authorization", replaceToken); + } else { + request.AddHeader ("Authorization", replaceToken); } - if (bodyParameterJson != null) - { - request.AddParameter("application/json", bodyParameterJson, ParameterType.RequestBody); + if (bodyParameterJson != null) { + request.AddParameter ("application/json", bodyParameterJson, ParameterType.RequestBody); } - if (queryDictionary != null) - { - foreach (var data in queryDictionary) - { - request.AddQueryParameter(data.Key, data.Value.ToString()); + if (queryDictionary != null) { + foreach (var data in queryDictionary) { + request.AddQueryParameter (data.Key, data.Value.ToString ()); } } - IRestResponse response = client.Execute(request); + IRestResponse response = client.Execute (request); return response.RawBytes; - } - catch (Exception ex) - { - Utlis.WriteLine(ex.Message); + } catch (Exception ex) { + Utlis.WriteLine (ex.Message); return null; } #endregion @@ -391,14 +351,12 @@ /// <param name="replaceToken"></param> /// <param name="mTimeout"></param> /// <returns></returns> - public static ResponsePackNew RequestHttpsUpload(Method method, string apiPath, object bodyParameterObject = null, Dictionary<string, object> queryDictionary = null, Dictionary<string, object> urlSegmentDictionary = null, string urlHead = "", string replaceToken = "", int mTimeout = 20) + public static ResponsePackNew RequestHttpsUpload (Method method, string apiPath, object bodyParameterObject = null, Dictionary<string, object> queryDictionary = null, Dictionary<string, object> urlSegmentDictionary = null, string urlHead = "", string replaceToken = "", int mTimeout = 20) { #region HttpWebRequest - try - { + try { - if (string.IsNullOrEmpty(urlHead)) - { + if (string.IsNullOrEmpty (urlHead)) { urlHead = GlobalRequestHttpsHost; } string requestFullUrl = urlHead + apiPath; @@ -407,77 +365,59 @@ //string requestFullUrl = GlobalRequestHttpsHost + apiPath; ////**************娴嬭瘯************** - RestClient client = new RestClient(requestFullUrl); - RestRequest request = new RestRequest(method); + RestClient client = new RestClient (requestFullUrl); + RestRequest request = new RestRequest (method); request.Timeout = mTimeout * 1000; //request.AddHeader ("content-type", "application/json"); - request.AddHeader("content-type", "application/octet-stream"); + request.AddHeader ("content-type", "application/octet-stream"); - if (string.IsNullOrEmpty(replaceToken)) - { - if ( MainPage.LoginUser != null) - {/* 濡傛灉涓嶉渶瑕侀獙璇乀oken鍙互涓嶇敤浼犲叆 */ - request.AddHeader("Authorization", MainPage.LoginUser.LoginTokenString); + if (string.IsNullOrEmpty (replaceToken)) { + if (MainPage.LoginUser != null) {/* 濡傛灉涓嶉渶瑕侀獙璇乀oken鍙互涓嶇敤浼犲叆 */ + request.AddHeader ("Authorization", MainPage.LoginUser.LoginTokenString); } - } - else - { - request.AddHeader("Authorization", replaceToken); + } else { + request.AddHeader ("Authorization", replaceToken); } - if (bodyParameterObject != null) - { - request.AddParameter("application/octet-stream", bodyParameterObject, ParameterType.RequestBody); + if (bodyParameterObject != null) { + request.AddParameter ("application/octet-stream", bodyParameterObject, ParameterType.RequestBody); } - if (queryDictionary != null) - { - foreach (var data in queryDictionary) - { - request.AddQueryParameter(data.Key, data.Value.ToString()); + if (queryDictionary != null) { + foreach (var data in queryDictionary) { + request.AddQueryParameter (data.Key, data.Value.ToString ()); } } - if (urlSegmentDictionary != null) - { - foreach (var data in urlSegmentDictionary) - { - request.AddUrlSegment(data.Key, data.Value.ToString()); + if (urlSegmentDictionary != null) { + foreach (var data in urlSegmentDictionary) { + request.AddUrlSegment (data.Key, data.Value.ToString ()); } } - IRestResponse response = client.Execute(request); - if (response.StatusCode == HttpStatusCode.OK) - { - try - { - ResponsePackNew revertObj = new ResponsePackNew() { }; - revertObj = Newtonsoft.Json.JsonConvert.DeserializeObject<ResponsePackNew>(response.Content); - if (revertObj.Code == null) - { + IRestResponse response = client.Execute (request); + if (response.StatusCode == HttpStatusCode.OK) { + try { + ResponsePackNew revertObj = new ResponsePackNew () { }; + revertObj = Newtonsoft.Json.JsonConvert.DeserializeObject<ResponsePackNew> (response.Content); + if (revertObj.Code == null) { revertObj.Code = StateCode.DATA_EXCEPTION; } ////缁熶竴杞垚澶у啓 //revertObj.StateCode = revertObj.StateCode.ToUpper (); return revertObj; + } catch (Exception ex) { + Utlis.WriteLine (ex.Message); + return new ResponsePackNew () { Code = StateCode.DATA_EXCEPTION }; } - catch (Exception ex) - { - Utlis.WriteLine(ex.Message); - return new ResponsePackNew() { Code = StateCode.DATA_EXCEPTION }; - } - } - else - { - Utlis.WriteLine(response.Content); - return new ResponsePackNew() { Code = StateCode.NETWORK_ERROR }; + } else { + Utlis.WriteLine (response.Content); + return new ResponsePackNew () { Code = StateCode.NETWORK_ERROR }; } - } - catch (Exception ex) - { - Utlis.WriteLine(ex.Message); - return new ResponsePackNew() { Code = StateCode.NETWORK_ERROR }; + } catch (Exception ex) { + Utlis.WriteLine (ex.Message); + return new ResponsePackNew () { Code = StateCode.NETWORK_ERROR }; } #endregion @@ -494,21 +434,18 @@ /// <param name="replaceToken"></param> /// <param name="mTimeout"></param> /// <returns></returns> - public static byte[] HttpsDownload(string requestFullUrl, int mTimeout = 30) + public static byte [] HttpsDownload (string requestFullUrl, int mTimeout = 30) { #region RestRequest - try - { - RestClient client = new RestClient(requestFullUrl); - RestRequest request = new RestRequest(Method.GET); + try { + RestClient client = new RestClient (requestFullUrl); + RestRequest request = new RestRequest (Method.GET); request.Timeout = mTimeout * 1000; - IRestResponse response = client.Execute(request); + IRestResponse response = client.Execute (request); return response.RawBytes; - } - catch (Exception ex) - { - Utlis.WriteLine(ex.Message); + } catch (Exception ex) { + Utlis.WriteLine (ex.Message); return null; } #endregion @@ -531,10 +468,10 @@ /// 鑾峰彇褰撳墠鏃堕棿鎴冲�� /// </summary> /// <returns></returns> - static string GetTimestamp() + static string GetTimestamp () { - System.DateTime startTime = TimeZone.CurrentTimeZone.ToLocalTime(new System.DateTime(1970, 1, 1)); // 褰撳湴鏃跺尯 - return ((long)(DateTime.Now - startTime).TotalMilliseconds).ToString(); // 鐩稿樊绉掓暟 + System.DateTime startTime = TimeZone.CurrentTimeZone.ToLocalTime (new System.DateTime (1970, 1, 1)); // 褰撳湴鏃跺尯 + return ((long)(DateTime.Now - startTime).TotalMilliseconds).ToString (); // 鐩稿樊绉掓暟 //return ((long)(DateTime.Now - startTime).TotalSeconds).ToString(); // 鐩稿樊绉掓暟 } @@ -543,15 +480,29 @@ /// </summary> /// <param name="signstr"></param> /// <returns></returns> - static string SignMD5Encrypt(string s) + static string SignMD5Encrypt (string s) { - byte[] sign = MD5.Create().ComputeHash(UTF8Encoding.UTF8.GetBytes(s)); + byte [] sign = MD5.Create ().ComputeHash (UTF8Encoding.UTF8.GetBytes (s)); string signstr = string.Empty; - foreach (byte item in sign) - { - signstr += item.ToString("X2"); + foreach (byte item in sign) { + signstr += item.ToString ("X2"); } - return signstr.ToLower(); + 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> @@ -560,57 +511,45 @@ /// 璁$畻sign绛惧悕 /// </summary> /// <returns></returns> - public static string GetSignRequestJson(object requestObj) + public static string GetSignRequestJson (object requestObj) { - try - { + try { //1. 灏唌odel瀹炰綋杞负Dictionary<string, object> - var paramDictionary = Newtonsoft.Json.JsonConvert.DeserializeObject<Dictionary<string, object>>(Newtonsoft.Json.JsonConvert.SerializeObject(requestObj)); + var paramDictionary = Newtonsoft.Json.JsonConvert.DeserializeObject<Dictionary<string, object>> (Newtonsoft.Json.JsonConvert.SerializeObject (requestObj)); //2. 璁$畻sign - if (paramDictionary != null) - { - paramDictionary.Add("appKey", APP_KEY); - paramDictionary.Add("timestamp", GetTimestamp()); + if (paramDictionary != null) { + paramDictionary.Add ("appKey", APP_KEY); + paramDictionary.Add ("timestamp", GetTimestamp ()); //2.1 瀛楀吀鍗囧簭 - paramDictionary = paramDictionary.OrderBy(o => o.Key).ToDictionary(o => o.Key, p => p.Value); + paramDictionary = paramDictionary.OrderBy (o => o.Key).ToDictionary (o => o.Key, p => p.Value); //2.2 鎷兼帴鎸塙RL閿�煎 string str = string.Empty; - foreach (KeyValuePair<string, object> item in paramDictionary) - { + foreach (KeyValuePair<string, object> item in paramDictionary) { //Value涓簄ull涓嶅弬鍔犳牎楠� - if (item.Value != null) - { - //Value.ToString()涓簄ull鎴栬��""涔熶笉鍙傚姞鏍¢獙 - if (!string.IsNullOrEmpty(item.Value.ToString())) - { + if (item.Value != null) { + //妫�娴嬪綋鍓嶅弬鏁版槸鍚﹂渶瑕佸弬涓庢牎楠� + if (IfValueNeedSign (item.Value.ToString ())) { //濡傛灉鏄痓ool绫诲瀷锛岃杞皬鍐� - if (item.Value is bool) - { - str += item.Key + "=" + item.Value.ToString().ToLower() + "&"; - } - else - { - str += item.Key + "=" + item.Value.ToString() + "&"; + if (item.Value is bool) { + str += item.Key + "=" + item.Value.ToString ().ToLower () + "&"; + } else { + str += item.Key + "=" + item.Value.ToString () + "&"; } } } } //2.3 鎷兼帴SECRET_KEY - str = str.Substring(0, str.Length - 1) + SECRET_KEY; + str = str.Substring (0, str.Length - 1) + SECRET_KEY; //2.4 MD5杞崲+杞皬鍐� - var signstr = SignMD5Encrypt(str); - paramDictionary.Add("sign", signstr); - var signResult = Newtonsoft.Json.JsonConvert.SerializeObject(paramDictionary); + var signstr = SignMD5Encrypt (str); + paramDictionary.Add ("sign", signstr); + var signResult = Newtonsoft.Json.JsonConvert.SerializeObject (paramDictionary); return signResult; - } - else - { + } else { return ""; } - } - catch - { + } catch { return ""; } } -- Gitblit v1.8.0