| | |
| | | using System.Net; |
| | | using System.Security.Cryptography; |
| | | using System.Text; |
| | | using HDL_ON.Entity; |
| | | using RestSharp; |
| | | using Shared; |
| | | |
| | |
| | | { |
| | | public class HttpUtil |
| | | { |
| | | |
| | | #region HttpUtil 全局常量 |
| | | ///// <summary> |
| | | ///// API_HTTPS |
| | |
| | | |
| | | /// <summary> |
| | | /// POST请求方法 body参数 |
| | | /// 针对住宅相关接口封装 |
| | | /// 调用住宅当前所在区域域名 |
| | | /// 如果是分享住宅,使用主人的token进行相关操作 |
| | | /// </summary> |
| | | /// <param name="apiPath"></param> |
| | | /// <param name="bodyParameterJson"></param> |
| | | /// <param name="mTimeout"></param> |
| | | /// <returns></returns> |
| | | public static ResponsePackNew RequestHttpsPostFroHome(string apiPath, string bodyParameterJson, int mTimeout = 10) |
| | | { |
| | | string urlHead = DB_ResidenceData.residenceData.residecenInfo.regionUrl; |
| | | var replaceToken = ""; |
| | | if (DB_ResidenceData.residenceData.residecenInfo.IsOthreShare) |
| | | { |
| | | replaceToken = DB_ResidenceData.residenceData.MasterToken; |
| | | } |
| | | return RequestHttps(Method.POST, apiPath, bodyParameterJson, null, null, urlHead, replaceToken, mTimeout); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// POST请求方法 body参数 |
| | | /// </summary> |
| | | /// <param name="apiPath"></param> |
| | | /// <param name="bodyParameterJson"></param> |
| | |
| | | try |
| | | { |
| | | |
| | | //if (string.IsNullOrEmpty (urlHead)) { |
| | | // urlHead = APIInfoConfig.Current.RequestHttpsHost; |
| | | //if (string.IsNullOrEmpty(urlHead)) |
| | | //{ |
| | | // urlHead = UserInfo.Current.RequestHttpsHost; |
| | | //} |
| | | //string requestFullUrl = urlHead + apiPath; |
| | | |
| | |
| | | |
| | | if (string.IsNullOrEmpty(replaceToken)) |
| | | { |
| | | if (MainPage.LoginUser != null) |
| | | if(UserInfo.Current != null) |
| | | {/* 如果不需要验证Token可以不用传入 */ |
| | | request.AddHeader("Authorization", MainPage.LoginUser.loginTokenString); |
| | | request.AddHeader("Authorization", UserInfo.Current.loginTokenString); |
| | | } |
| | | } |
| | | else |
| | |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | HDL_ON.Common.Utlis.WriteLine(ex.Message); |
| | | HDL_ON.Utlis.WriteLine(ex.Message); |
| | | return new ResponsePackNew() { Code = "DATA_EXCEPTION" }; |
| | | } |
| | | } |
| | | else |
| | | { |
| | | HDL_ON.Common.Utlis.WriteLine(response.Content); |
| | | HDL_ON.Utlis.WriteLine(response.Content); |
| | | return new ResponsePackNew() { Code = "NETWORK_ERROR" }; |
| | | } |
| | | |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | HDL_ON.Common.Utlis.WriteLine(ex.Message); |
| | | HDL_ON.Utlis.WriteLine(ex.Message); |
| | | return new ResponsePackNew() { Code = "NETWORK_ERROR" }; |
| | | } |
| | | |
| | |
| | | try |
| | | { |
| | | //if (string.IsNullOrEmpty (urlHead)) { |
| | | // urlHead = APIInfoConfig.Current.RequestHttpsHost; |
| | | // urlHead = UserInfo.Current.RequestHttpsHost; |
| | | //} |
| | | //string requestFullUrl = urlHead + apiPath; |
| | | |
| | |
| | | |
| | | if (string.IsNullOrEmpty(replaceToken)) |
| | | { |
| | | if (MainPage.LoginUser != null) |
| | | if ( UserInfo.Current != null) |
| | | {/* 如果不需要验证Token可以不用传入 */ |
| | | request.AddHeader("Authorization", MainPage.LoginUser.loginTokenString); |
| | | request.AddHeader("Authorization", UserInfo.Current.loginTokenString); |
| | | } |
| | | } |
| | | else |
| | |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | HDL_ON.Common.Utlis.WriteLine(ex.Message); |
| | | HDL_ON.Utlis.WriteLine(ex.Message); |
| | | return null; |
| | | } |
| | | #endregion |
| | |
| | | { |
| | | |
| | | //if (string.IsNullOrEmpty (urlHead)) { |
| | | // urlHead = APIInfoConfig.Current.RequestHttpsHost; |
| | | // urlHead = UserInfo.Current.RequestHttpsHost; |
| | | //} |
| | | //string requestFullUrl = urlHead + apiPath; |
| | | |
| | |
| | | |
| | | if (string.IsNullOrEmpty(replaceToken)) |
| | | { |
| | | if (MainPage.LoginUser != null) |
| | | if ( UserInfo.Current != null) |
| | | {/* 如果不需要验证Token可以不用传入 */ |
| | | request.AddHeader("Authorization", MainPage.LoginUser.loginTokenString); |
| | | request.AddHeader("Authorization", UserInfo.Current.loginTokenString); |
| | | } |
| | | } |
| | | else |
| | |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | HDL_ON.Common.Utlis.WriteLine(ex.Message); |
| | | HDL_ON.Utlis.WriteLine(ex.Message); |
| | | return new ResponsePackNew() { Code = "DATA_EXCEPTION" }; |
| | | } |
| | | } |
| | | else |
| | | { |
| | | HDL_ON.Common.Utlis.WriteLine(response.Content); |
| | | HDL_ON.Utlis.WriteLine(response.Content); |
| | | return new ResponsePackNew() { Code = "NETWORK_ERROR" }; |
| | | } |
| | | |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | HDL_ON.Common.Utlis.WriteLine(ex.Message); |
| | | HDL_ON.Utlis.WriteLine(ex.Message); |
| | | return new ResponsePackNew() { Code = "NETWORK_ERROR" }; |
| | | } |
| | | |
| | |
| | | string str = string.Empty; |
| | | foreach (KeyValuePair<string, object> item in paramDictionary) |
| | | { |
| | | //Value为null不参加校验 |
| | | if (item.Value != null) |
| | | { |
| | | str += item.Key + "=" + item.Value.ToString() + "&"; |
| | | //Value.ToString()为null或者""也不参加校验 |
| | | if (!string.IsNullOrEmpty(item.Value.ToString())) |
| | | { |
| | | //如果是bool类型,要转小写 |
| | | 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; |
| | | //2.4 MD5转换+转小写 |