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