From 407fae6f07a2a982a2a814c2f145c40733c966cb Mon Sep 17 00:00:00 2001
From: JLChen <551775569@qq.com>
Date: 星期三, 12 一月 2022 15:29:34 +0800
Subject: [PATCH] 2022-01-12 1.更新
---
Crabtree/SmartHome/HDL/Common/HttpUtil/HttpUtil.cs | 471 ++++++++++++++++++++++++++++------------------------------
1 files changed, 225 insertions(+), 246 deletions(-)
diff --git a/Crabtree/SmartHome/HDL/Common/HttpUtil/HttpUtil.cs b/Crabtree/SmartHome/HDL/Common/HttpUtil/HttpUtil.cs
index d391493..e6c03af 100644
--- a/Crabtree/SmartHome/HDL/Common/HttpUtil/HttpUtil.cs
+++ b/Crabtree/SmartHome/HDL/Common/HttpUtil/HttpUtil.cs
@@ -1,4 +1,10 @@
-锘縰sing System;
+锘�/**鍙戝竷鐜 浣跨敤鍙戝竷鐜 鍙戝竷鐨勬寮忕鍚岾EY**/
+#define Distribution
+
+///**娴嬭瘯鐜 浣跨敤娴嬭瘯鐜 浣跨敤娴嬭瘯鐨勭鍚岾EY**/
+//#undef Distribution
+
+using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
@@ -7,6 +13,8 @@
//using HDL_ON.Entity;
using RestSharp;
using Shared.SimpleControl;
+
+
namespace Shared
{
@@ -38,12 +46,42 @@
#endregion
#region **********缃戠粶璇锋眰灏佽**********
+
+
+
+
+#if Distribution
+ ///**********姝e紡鐜**********
/// <summary>
/// 鍥哄畾鍩熷悕,姝e紡鐜
/// 鍏叡鍩熷悕灏辫繎瑙f瀽
/// </summary>
- //public const string GlobalRequestHttpsHost = "https://nearest.hdlcontrol.com";
- public const string GlobalRequestHttpsHost = "https://test-gz.hdlcontrol.com";
+ public const string GlobalRequestHttpsHost = "https://bahrain-gateway.hdlcontrol.com";
+ /// <summary>
+ ///
+ /// </summary>
+ const string APP_KEY = "HDL-HOME-IND-APP";
+ /// <summary>
+ ///
+ /// </summary>
+ const string SECRET_KEY = "yPL345bn68gHnvilG4tYbq3cTYkiHu";
+
+#else
+ ///**********娴嬭瘯鐜**********
+ /// <summary>
+ /// 鍥哄畾鍩熷悕,娴嬭瘯澧�
+ /// 鍏叡鍩熷悕灏辫繎瑙f瀽
+ /// </summary>
+ public const string GlobalRequestHttpsHost = "https://china-gateway.hdlcontrol.com";
+ /// <summary>
+ ///
+ /// </summary>
+ const string APP_KEY = "HDL-APP-TENANT";
+ /// <summary>
+ ///
+ /// </summary>
+ const string SECRET_KEY = "CeL345bn28gHnvi9G4tYcq3cTYkiiC";
+#endif
/// <summary>
/// Get 璇锋眰鏈嶅姟鍣ㄦ柟娉�
@@ -55,9 +93,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 +133,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 +142,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 +155,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 +170,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 +187,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
- {
+#region HttpWebRequest
+ try {
- if (string.IsNullOrEmpty(urlHead))
- {
+ if (string.IsNullOrEmpty (urlHead)) {
urlHead = GlobalRequestHttpsHost;
}
string requestFullUrl = urlHead + apiPath;
@@ -166,86 +202,67 @@
//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
+#endregion
}
@@ -262,18 +279,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 +300,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 +331,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))
- {
+#region RestRequest
+ try {
+ if (string.IsNullOrEmpty (urlHead)) {
urlHead = GlobalRequestHttpsHost;
}
string requestFullUrl = urlHead + apiPath;
@@ -337,45 +344,36 @@
//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
+#endregion
}
@@ -391,14 +389,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
- {
+#region HttpWebRequest
+ try {
- if (string.IsNullOrEmpty(urlHead))
- {
+ if (string.IsNullOrEmpty (urlHead)) {
urlHead = GlobalRequestHttpsHost;
}
string requestFullUrl = urlHead + apiPath;
@@ -407,80 +403,62 @@
//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
+#endregion
}
@@ -494,47 +472,46 @@
/// <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);
+#region RestRequest
+ 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
+#endregion
}
- #endregion
+#endregion
- #region **********绛惧悕鏍¢獙**********
- /// <summary>
- ///
- /// </summary>
- const string APP_KEY = "HDL-HOME-APP-TEST";
- /// <summary>
- ///
- /// </summary>
- const string SECRET_KEY = "WeJ8TY88vbakCcnvH8G1tDUqzLWY8yss";
+#region **********绛惧悕鏍¢獙**********
+ ///// <summary>
+ /////
+ ///// </summary>
+ //const string APP_KEY = "HDL-HOME-APP-TEST";
+ ///// <summary>
+ /////
+ ///// </summary>
+ //const string SECRET_KEY = "WeJ8TY88vbakCcnvH8G1tDUqzLWY8yss";
+
+
/// <summary>
/// 鑾峰彇褰撳墠鏃堕棿鎴冲��
/// </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 +520,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,62 +551,50 @@
/// 璁$畻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 "";
}
}
- #endregion
+#endregion
}
/// <summary>
--
Gitblit v1.8.0