get参数细节修改

This commit is contained in:
范露尧
2022-10-27 16:52:34 +08:00
parent 671b6da781
commit f785a068aa

View File

@@ -23,7 +23,7 @@ namespace Getf_Service_Transfer_Client_Service_HttpHandler
public object DoRequest(string url, JObject jObject, out string msg) public object DoRequest(string url, JObject jObject, out string msg)
{ {
msg = String.Empty;
try try
{ {
var method = "POST"; var method = "POST";
@@ -32,7 +32,10 @@ namespace Getf_Service_Transfer_Client_Service_HttpHandler
method = jObject["Method"].Value<string>(); method = jObject["Method"].Value<string>();
} }
if ("GET".Equals(method, StringComparison.OrdinalIgnoreCase)) if ("GET".Equals(method, StringComparison.OrdinalIgnoreCase))
{
url = GetGetUrl(url, jObject); url = GetGetUrl(url, jObject);
_LogHelper.Info($"93段接口url:{url}");
}
HttpWebRequest httpWebRequest = WebRequest.Create(url) as HttpWebRequest; HttpWebRequest httpWebRequest = WebRequest.Create(url) as HttpWebRequest;
var head = jObject["Head"]; var head = jObject["Head"];
@@ -64,28 +67,36 @@ namespace Getf_Service_Transfer_Client_Service_HttpHandler
r = GetResponse(httpWebRequest, encoding); r = GetResponse(httpWebRequest, encoding);
} }
msg = String.Empty;
_LogHelper.Info($"93段接口:method:{method},url:{url},参数:{jObject["Data"]},结果:{r}"); _LogHelper.Info($"93段接口:method:{method},url:{url},参数:{jObject["Data"]},结果:{r}");
return r; return r;
} }
catch (WebException e) catch (WebException e)
{ {
using (var stream = e?.Response?.GetResponseStream()) _LogHelper.Info("异常:" + Newtonsoft.Json.JsonConvert.SerializeObject(e));
if (e?.Response != null)
{ {
msg = "http错误(" + (int)(e?.Response as HttpWebResponse)?.StatusCode + ")"; using (var stream = e?.Response?.GetResponseStream())
if (stream != null)
{ {
using (StreamReader streamReader = new StreamReader(stream)) msg = "http错误(" + (int)(e?.Response as HttpWebResponse)?.StatusCode + ")";
if (stream != null)
{ {
msg += streamReader.ReadToEnd(); using (StreamReader streamReader = new StreamReader(stream))
_LogHelper.Info("1:请求错误原因为:" + msg); {
msg += streamReader.ReadToEnd();
_LogHelper.Info("1:请求错误原因为:" + msg);
}
}
else
{
msg += e.Message;
_LogHelper.Info("2:请求错误原因为:" + msg);
} }
} }
else }
{ else
msg += e.Message; {
_LogHelper.Info("2:请求错误原因为:" + msg); msg += e.Message;
} _LogHelper.Info("2:请求错误原因为:" + msg);
} }
} }
catch (Exception e) catch (Exception e)
@@ -101,20 +112,30 @@ namespace Getf_Service_Transfer_Client_Service_HttpHandler
var jParam = jObject["Param"]; var jParam = jObject["Param"];
if (jParam != null) if (jParam != null)
{ {
var Param = Newtonsoft.Json.JsonConvert.DeserializeObject<Dictionary<string, string>>(jParam.ToString()); var Param = Newtonsoft.Json.JsonConvert.DeserializeObject<Dictionary<string, object>>(jParam.ToString());
foreach (var item in Param) foreach (var item in Param)
{ {
url += $"{item.Key}={item.Value}"; url += $"&{item.Key}={item.Value}";
} }
} }
var jdata = jObject["Data"]; var jdata = jObject["Data"];
if (jdata != null) if (jdata != null)
{ {
var Data = Newtonsoft.Json.JsonConvert.DeserializeObject<Dictionary<string, string>>(jdata.ToString()); var Data = Newtonsoft.Json.JsonConvert.DeserializeObject<Dictionary<string, object>>(jdata.ToString());
foreach (var item in Data) foreach (var item in Data)
{ {
url += $"&{item.Key}={item.Value}"; if (item.Value is JArray)
{
foreach (var arr in (JArray)item.Value)
{
url += $"&{item.Key}={arr}";
}
}
else if (item.Value is JObject)
url += $"&{item.Key}={Newtonsoft.Json.JsonConvert.SerializeObject(item.Value)}";
else
url += $"&{item.Key}={item.Value}";
} }
} }
return url; return url;