Versionen im Vergleich

Schlüssel

  • Diese Zeile wurde hinzugefügt.
  • Diese Zeile wurde entfernt.
  • Formatierung wurde geändert.

Die Deutsche Gesellschaft für Kardiologie - Herz- und Kreislaufforschung e.V. German Cardiac Society stellt für seine Dienstleister verschiedene Services bereit, um Informationen abzurufen.

Hier finden Sie exemplarisch einen Codeausschnitt in C#, um über die Mitgliedsnummer und dem Passwort den Mitgliedsstatus abzufragen.

Kommentierter Code-Snippet

// Es werden die Parameter "grant_type", "client_id", "client-secret" und "scope" benötigt.
// Die Werte sind seitens der DGK vorgegeben.
                        
// Es wird ein Dictionary erstellt, da im Snippet eine Auflistung von Namen/Wert-Paaren benötigt wird.
var values = new Dictionary<string, string>
{
     { "grant_type", "client_credentials" },
     { "client_id", "vergebene ID" },
     { "client_secret", "vergebenens Secret" },
     { "scope", "api1" }
};

// Abruf des Bearer-Token zur Authentifizierung
 
// Die HttpClient-Klasse dient dazu, HTTP-Anforderungen zu senden und HTTP-Antworten aus einer Ressource zu erhalten.
// Diese Ressource wird über eine URI identifiziert.
// Die Token-URL erhalten Sie von der DGK.                        
var tokenClient = new HttpClient(httpClientHandler);
 
// FormUrlEncodedContent ist ein Container für die Name/Wert-Tupel, codiert mit dem "application/x-www-form-urlencoded" MIME-Typ.
var content = new FormUrlEncodedContent(values);
                        
// Es wird eine Anfrage an das zentrale Login verschickt, um ein Authorisierungstoken zu erhalten. Die Token-URL wird bereit gestellt.
var response = tokenClient.PostAsync(ConfigurationManager.AppSettings["Token-URL"], content).Result;
                        
// Die Antwort der PostAsync-Methode gibt eine Task<HttpResponseMessage> zurück.
// Der Content ist im JSON-Format und beinhaltet den Access-Token.
                        
// In diesem Snippet wird aus der Zeichenkette ein JSON-Objekt erstellt.
var result = JObject.Parse(response.Content.ReadAsStringAsync().Result);
 
// Der Wert des Tupels "access_token" enthält den Token. Dieser Token wird für die Nutzung der Services benötigt
var tokenValue = result.GetValue("access_token").Value<string>();
                        
// Nutzung des Service                       
// Es wird wieder ein Objekt der HTTPClient-Klasse genutzt.
var dataClient = new HttpClient();
 

// Die API-URL wird bereit gestellt.
dataClient.BaseAddress = new Uri(„API-URL“);
                        
// Der Header der Anfrage enthält das vorher abgerufene Token
dataClient.DefaultRequestHeaders.Accept.Clear();
dataClient.DefaultRequestHeaders.Add("Authorization", "Bearer " + tokenValue);
                        
// Die Antwort wird im JSON-Format angefordert. Dies ist optional.
dataClient.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));

// Aufruf der Funktion "isDGKMGCUG" mit den Parametern mnr (Mitgliedsnummer) und pw (Passwort).
HttpResponseMessage responseMessage = dataClient.GetAsync($"Common/isDGKMGCUG?user={mnr}&pw={password}").Result;
 
// Das Ergebnis als bool. True = Mitglied und False = Ist kein Mitglied
var verificationResult= bool.Parse(responseMessage.Content.ReadAsStringAsync().Result;


Info

Dienstleister, die einen Service konsumieren wollen, erhalten alle notwendigen Informationen.

Die oben genannte Funktion dient nur der Veranschaulichung und ist kein Standard, der Dienstleistern zur Verfügung gestellt wird.

Verwandte Artikel

Inhalt nach Stichwort
showLabelsfalse
max5
spacesPUB
showSpacefalse
sortmodified
reversetrue
typepage
cqllabel in ("dienstleister","anleitung","public") and type = "page" and space = "PUB"
labelskb-how-to-article


Seiteneigenschaften
hiddentrue


Verwandte Vorgänge

...