Ich bin recht Frisch in der C# Programmierung und habe bei meinem Aktuellem Projekt folgendes Problem.
Ich möchte mir gerne Daten aus einem Online Wirtschafts Simulator mittels API's ziehen. Dies klappt auch schon recht gut, das Sieht ungefähr so aus:
public static class APIHelper
{
public static HttpClient APIClient { get; set; } = new HttpClient();
public static void InitialisiereClient()
{
APIClient = new HttpClient();
APIClient.DefaultRequestHeaders.Accept.Clear();
APIClient.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
}
}
public class ProduktProcessor
{
//-------------------------Enziklopädie--------------------------------
public static async Task<ProduktNummern[]> LoadProdukts1()
{
string url = "";
url = $"https://www.simcompanies.com/api/v4/de/0/encyclopedia/resources/";
using (HttpResponseMessage response = await APIHelper.APIClient.GetAsync(url))
{
if (response.IsSuccessStatusCode)
{
string jsonResponse = await response.Content.ReadAsStringAsync();
var enzi = JsonConvert.DeserializeObject<ProduktNummern[]>(jsonResponse);
return enzi;
}
else
{
throw new Exception(response.ReasonPhrase);
}
}
}
}
Wie gesagt, das läuft soweit stabil,
aber wenn ich jetzt ne API aufrufen möchte die Daten über mein Benutzerkonto enthält (z.b. https://www.simcompanies.com/api/v2/companies/me/), bekomme ich nur NULL in string jsonResponse.
Das liegt natürlich daran das ich in dem Browser den der HTTPClient benutzt keine Anmeldedaten hinterlegt sind.
Darum meine Frage: Wie komme ich an die API Daten vom Benutzerkonto? Kann man sich irgendwie mit vorhandenen Cookies oder so anmelden?
Danke im Vorraus!