Initial commit
This commit is contained in:
111
App/Helper/HttpClientHelper.cs
Normal file
111
App/Helper/HttpClientHelper.cs
Normal file
@@ -0,0 +1,111 @@
|
||||
using MyModels;
|
||||
using Newtonsoft.Json;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Net.Http;
|
||||
using System.Net.Http;
|
||||
using System.Net.Http.Headers;
|
||||
using System.Net.Http.Formatting;
|
||||
using System.Threading.Tasks;
|
||||
using sf1.Models;
|
||||
|
||||
namespace sf1.Helper
|
||||
{
|
||||
public class HttpClientHelper
|
||||
{
|
||||
string apikey = "";
|
||||
public class DataStore<T>
|
||||
{
|
||||
//public T Data { get; set; }
|
||||
public string daten { get; set; }
|
||||
public bool resultstatus { get; set; }
|
||||
public string resultstatuscode { get; set; }
|
||||
}
|
||||
|
||||
public HttpResponseMessage ResponsTask;
|
||||
public HttpResponseMessage ResponsResult;
|
||||
public DataStore<object> Results = new DataStore<object>();
|
||||
|
||||
string uri = "";
|
||||
public HttpClientHelper()
|
||||
{
|
||||
Helper.ParameterHelper ph = new Helper.ParameterHelper();
|
||||
uri = ph.GetParameter("API");
|
||||
apikey = ph.GetParameter("ApiKey");
|
||||
}
|
||||
|
||||
public void CallService(string api, string key, string fnkt, Object daten)
|
||||
{
|
||||
HttpClient client = new HttpClient();
|
||||
client.BaseAddress = new Uri(uri);
|
||||
client.DefaultRequestHeaders.Add("ApiKey", apikey);
|
||||
|
||||
switch (fnkt)
|
||||
{
|
||||
case "GET":
|
||||
if (key!="")
|
||||
{
|
||||
api = api+ "/" + key;
|
||||
}
|
||||
var responseTask = client.GetAsync(api);
|
||||
responseTask.Wait();
|
||||
var result = responseTask.Result;
|
||||
Results.resultstatus = responseTask.IsCompletedSuccessfully;
|
||||
if (result.IsSuccessStatusCode)
|
||||
{
|
||||
var readTask = result.Content.ReadAsStringAsync();
|
||||
readTask.Wait();
|
||||
//DataStore<object> ds = new DataStore<object>();
|
||||
|
||||
|
||||
Results.daten = readTask.Result;
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
||||
case "PUT":
|
||||
if (key != "")
|
||||
{
|
||||
api = api+ "/" + key;
|
||||
}
|
||||
var response = client.PutAsJsonAsync(api, daten).Result;
|
||||
Results.resultstatuscode = response.StatusCode.ToString();
|
||||
break;
|
||||
case "POST":
|
||||
|
||||
var postresponse = client.PostAsJsonAsync(api, daten).Result;
|
||||
Results.resultstatuscode = postresponse.StatusCode.ToString();
|
||||
break;
|
||||
case "DELETE":
|
||||
if (key != "")
|
||||
{
|
||||
api = api + "/" + key;
|
||||
}
|
||||
var deleteresponse = client.DeleteAsync(api).Result;
|
||||
Results.resultstatuscode = deleteresponse.StatusCode.ToString();
|
||||
break;
|
||||
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
// var responseTask = client.GetAsync("user");
|
||||
//responseTask.Wait();
|
||||
|
||||
//var result = responseTask.Result;
|
||||
//if (result.IsSuccessStatusCode)
|
||||
//{
|
||||
// var readTask = result.Content.ReadAsStringAsync();
|
||||
// readTask.Wait();
|
||||
// DataStore<object> ds = new DataStore<object>();
|
||||
// ds.Data = readTask;
|
||||
|
||||
//}
|
||||
//else
|
||||
//{
|
||||
|
||||
//}
|
||||
}
|
||||
}
|
||||
}
|
||||
25
App/Helper/ParameterHelper.cs
Normal file
25
App/Helper/ParameterHelper.cs
Normal file
@@ -0,0 +1,25 @@
|
||||
using Microsoft.Extensions.Configuration;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace sf1.Helper
|
||||
{
|
||||
public class ParameterHelper
|
||||
{
|
||||
|
||||
public string GetParameter(string Keyvalue)
|
||||
{
|
||||
var configuation = GetConfiguration();
|
||||
return configuation.GetSection("Appsettings").GetSection(Keyvalue).Value;
|
||||
}
|
||||
|
||||
public IConfigurationRoot GetConfiguration()
|
||||
{
|
||||
var builder = new ConfigurationBuilder().SetBasePath(Directory.GetCurrentDirectory()).AddJsonFile("appsettings.json", optional: true, reloadOnChange: true);
|
||||
return builder.Build();
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user