| | |
| | | } |
| | | |
| | | |
| | | public dynamic SumbitIQCToOA(dynamic queryObj) |
| | | { |
| | | try |
| | | { |
| | | ServicePointManager.ServerCertificateValidationCallback += (s, cert, chain, sslPolicyErrors) => true; |
| | | ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12; |
| | | //public dynamic SumbitIQCToOA(dynamic queryObj) |
| | | //{ |
| | | // try |
| | | // { |
| | | // ServicePointManager.ServerCertificateValidationCallback += (s, cert, chain, sslPolicyErrors) => true; |
| | | // ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12; |
| | | |
| | | var request = WebRequest.Create(url) as HttpWebRequest; |
| | | request.Method = "POST"; |
| | | request.Timeout = 20000; // 20秒超时 |
| | | request.ContentType = "application/x-www-form-urlencoded; charset=utf-8"; // 明确指定编码 |
| | | // var request = WebRequest.Create(url) as HttpWebRequest; |
| | | // request.Method = "POST"; |
| | | // request.Timeout = 20000; // 20秒超时 |
| | | // request.ContentType = "application/x-www-form-urlencoded; charset=utf-8"; // 明确指定编码 |
| | | |
| | | // 添加调试头信息 |
| | | request.Headers.Add("appid", APPID); |
| | | request.Headers.Add("token", token); |
| | | request.Headers.Add("userId", userId); |
| | | // // 添加调试头信息 |
| | | // request.Headers.Add("appid", APPID); |
| | | // request.Headers.Add("token", token); |
| | | // request.Headers.Add("userId", userId); |
| | | |
| | | // 构建带时区的日期参数 |
| | | var postData = new StringBuilder(); |
| | | var dateParam = DateTime.Now.AddDays(-1).ToString("yyyy-MM-ddTHH:mm:sszzz"); |
| | | postData.AppendFormat("KQSDATE={0}&KQEDATE={1}", |
| | | Uri.EscapeDataString(dateParam), |
| | | Uri.EscapeDataString(dateParam)); |
| | | // // 构建带时区的日期参数 |
| | | // var postData = new StringBuilder(); |
| | | // var dateParam = DateTime.Now.AddDays(-1).ToString("yyyy-MM-ddTHH:mm:sszzz"); |
| | | // postData.AppendFormat("KQSDATE={0}&KQEDATE={1}", |
| | | // Uri.EscapeDataString(dateParam), |
| | | // Uri.EscapeDataString(dateParam)); |
| | | |
| | | byte[] byteData = Encoding.UTF8.GetBytes(postData.ToString()); // 改用UTF8编码 |
| | | // byte[] byteData = Encoding.UTF8.GetBytes(postData.ToString()); // 改用UTF8编码 |
| | | |
| | | // 更完善的请求写入 |
| | | using (var stream = request.GetRequestStream()) |
| | | { |
| | | stream.Write(byteData, 0, byteData.Length); |
| | | } |
| | | // // 更完善的请求写入 |
| | | // using (var stream = request.GetRequestStream()) |
| | | // { |
| | | // stream.Write(byteData, 0, byteData.Length); |
| | | // } |
| | | |
| | | // 处理HTTP错误状态码 |
| | | using (var response = request.GetResponse() as HttpWebResponse) |
| | | { |
| | | if (response.StatusCode != HttpStatusCode.OK) |
| | | { |
| | | throw new WebException($"服务器返回错误状态码: {(int)response.StatusCode} {response.StatusDescription}"); |
| | | } |
| | | // // 处理HTTP错误状态码 |
| | | // using (var response = request.GetResponse() as HttpWebResponse) |
| | | // { |
| | | // if (response.StatusCode != HttpStatusCode.OK) |
| | | // { |
| | | // throw new WebException($"服务器返回错误状态码: {(int)response.StatusCode} {response.StatusDescription}"); |
| | | // } |
| | | |
| | | using (var stream = response.GetResponseStream()) |
| | | using (var reader = new StreamReader(stream, Encoding.UTF8)) |
| | | { |
| | | return reader.ReadToEnd(); |
| | | } |
| | | } |
| | | } |
| | | catch (WebException ex) when (ex.Response is HttpWebResponse response) |
| | | { |
| | | // 记录详细错误信息 |
| | | var errorStream = response.GetResponseStream(); |
| | | using (var reader = new StreamReader(errorStream)) |
| | | { |
| | | string errorDetails = reader.ReadToEnd(); |
| | | throw new Exception($"请求失败 [Status: {response.StatusCode}]: {errorDetails}", ex); |
| | | } |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | throw new Exception($"请求异常: {ex.Message}", ex); |
| | | } |
| | | } |
| | | // using (var stream = response.GetResponseStream()) |
| | | // using (var reader = new StreamReader(stream, Encoding.UTF8)) |
| | | // { |
| | | // return reader.ReadToEnd(); |
| | | // } |
| | | // } |
| | | // } |
| | | // catch (WebException ex) when (ex.Response is HttpWebResponse response) |
| | | // { |
| | | // // 记录详细错误信息 |
| | | // var errorStream = response.GetResponseStream(); |
| | | // using (var reader = new StreamReader(errorStream)) |
| | | // { |
| | | // string errorDetails = reader.ReadToEnd(); |
| | | // throw new Exception($"请求失败 [Status: {response.StatusCode}]: {errorDetails}", ex); |
| | | // } |
| | | // } |
| | | // catch (Exception ex) |
| | | // { |
| | | // throw new Exception($"请求异常: {ex.Message}", ex); |
| | | // } |
| | | //} |
| | | } |