Rest client in using x evitare eccessivo consumo RAM

This commit is contained in:
2023-05-12 18:41:18 +02:00
parent 1d3e4cac06
commit 2e9c948da5
+83 -75
View File
@@ -206,26 +206,28 @@ namespace WebDoorCreator.SDK
{
string answ = "";
// cerco online
RestClient client = new RestClient(apiUrl);
var request = new RestRequest(URL);
try
using (RestClient client = new RestClient(apiUrl))
{
var response = client.Get(request);
// controllo status code risposta
if (response.StatusCode == System.Net.HttpStatusCode.OK)
var request = new RestRequest(URL);
try
{
// deserializzo risposta
answ = response.Content;
var response = client.Get(request);
// controllo status code risposta
if (response.StatusCode == System.Net.HttpStatusCode.OK)
{
// deserializzo risposta
answ = response.Content;
}
else
{
answ = "KO";
}
}
else
catch
{
answ = "KO";
answ = "ERR";
}
}
catch
{
answ = "ERR";
}
// restituisco valore!
return answ;
}
@@ -240,31 +242,33 @@ namespace WebDoorCreator.SDK
{
string answ = "";
// cerco online
RestClient client = new RestClient(apiUrl);
// compongo
string paramsQuery = "";
foreach (var item in paramsList)
using (RestClient client = new RestClient(apiUrl))
{
paramsQuery += $"{item.Key}={item.Value}";
}
var request = new RestRequest($"{URL}?{paramsQuery}");
try
{
var response = client.Get(request);
// controllo status code risposta
if (response.StatusCode == System.Net.HttpStatusCode.OK)
// compongo
string paramsQuery = "";
foreach (var item in paramsList)
{
// deserializzo risposta
answ = response.Content;
paramsQuery += $"{item.Key}={item.Value}";
}
else
var request = new RestRequest($"{URL}?{paramsQuery}");
try
{
answ = "KO";
var response = client.Get(request);
// controllo status code risposta
if (response.StatusCode == System.Net.HttpStatusCode.OK)
{
// deserializzo risposta
answ = response.Content;
}
else
{
answ = "KO";
}
}
catch
{
answ = "ERR";
}
}
catch
{
answ = "ERR";
}
// restituisco valore!
return answ;
@@ -280,27 +284,29 @@ namespace WebDoorCreator.SDK
{
string answ = "";
// cerco online
RestClient client = new RestClient(apiUrl);
var request = new RestRequest(URL);
request.AddJsonBody(payload);
try
using (RestClient client = new RestClient(apiUrl))
{
var response = client.Post(request);
// controllo status code risposta
if (response.StatusCode == System.Net.HttpStatusCode.OK)
var request = new RestRequest(URL);
request.AddJsonBody(payload);
try
{
// deserializzo risposta
answ = response.Content;
var response = client.Post(request);
// controllo status code risposta
if (response.StatusCode == System.Net.HttpStatusCode.OK)
{
// deserializzo risposta
answ = response.Content;
}
else
{
answ = "KO";
}
}
else
catch
{
answ = "KO";
answ = "ERR";
}
}
catch
{
answ = "ERR";
}
// restituisco valore!
return answ;
}
@@ -316,39 +322,41 @@ namespace WebDoorCreator.SDK
{
string answ = "";
// cerco online
RestClient client = new RestClient(apiUrl);
var request = new RestRequest(URL);
// compongo
string paramsQuery = "";
if (paramsList != null && paramsList.Count > 0)
using (RestClient client = new RestClient(apiUrl))
{
foreach (var item in paramsList)
var request = new RestRequest(URL);
// compongo
string paramsQuery = "";
if (paramsList != null && paramsList.Count > 0)
{
paramsQuery += $"{item.Key}={item.Value}";
foreach (var item in paramsList)
{
paramsQuery += $"{item.Key}={item.Value}";
}
request = new RestRequest($"{URL}?{paramsQuery}");
}
request = new RestRequest($"{URL}?{paramsQuery}");
}
if (!string.IsNullOrEmpty(payload))
{
request.AddJsonBody(payload);
}
try
{
var response = client.Post(request);
// controllo status code risposta
if (response.StatusCode == System.Net.HttpStatusCode.OK)
if (!string.IsNullOrEmpty(payload))
{
// deserializzo risposta
answ = response.Content;
request.AddJsonBody(payload);
}
else
try
{
answ = "KO";
var response = client.Post(request);
// controllo status code risposta
if (response.StatusCode == System.Net.HttpStatusCode.OK)
{
// deserializzo risposta
answ = response.Content;
}
else
{
answ = "KO";
}
}
catch
{
answ = "ERR";
}
}
catch
{
answ = "ERR";
}
// restituisco valore!
return answ;