| | |
| | | // 封装一个用HttpClient发送Post请求的方法有参数 |
| | | public static async Task<string> PostAsync(string url, Dictionary<string, object> parameters) |
| | | { |
| | | try |
| | | { |
| | | // 创建一个新的字典,排除 RequestTime 和 SessionId |
| | | var filteredParameters = parameters.Where(p => p.Key != "RequestTime"&& p.Key != "SessionId").ToDictionary(p => p.Key, p => p.Value); |
| | | |
| | |
| | | return responseBody; |
| | | } |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | LogErrorParameters(ex.StackTrace,ex.Message, url); |
| | | return ex.Message; |
| | | } |
| | | |
| | | } |
| | | private static void LogErrorParameters(string errordetail, string error, string url = "") |
| | | { |
| | | StringBuilder builder = new StringBuilder(); |
| | | builder.Append(Environment.NewLine); |
| | | builder.Append("---------------------------------------------"); |
| | | builder.Append(Environment.NewLine); |
| | | builder.Append("url:" + url + "异常详细信息: " + JsonConvert.SerializeObject(error)); |
| | | builder.Append("url:" + url + "异常信息: " + JsonConvert.SerializeObject(error)); |
| | | LogFactory.GetLog("API接口异常").Error(true, builder); |
| | | } |
| | | private static void LogRequestParameters(Dictionary<string, object> parameters, string url = "") |
| | | { |
| | | StringBuilder builder = new StringBuilder(); |
| | |
| | | LogFactory.GetLog("API接口").Info(true, builder); |
| | | } |
| | | |
| | | |
| | | |
| | | private static IEnumerable<KeyValuePair<string, string>> ConvertToKeyValuePairs(Dictionary<string, object> parameters) |
| | | { |
| | | foreach (var kvp in parameters) |