1

J'ai une application Web C# qui se connecte au répertoire Azure AD B2C avec MS Graph pour afficher les données utilisateur. Je suis à la recherche d'une meilleure façon d'afficher les contenus renvoyés par Graph Query. Je pourrais toujours faire du formatage de chaîne simple, mais je cherche quelque chose de plus optimal.Modification des réponses MS Graph pour affichage sur site

J'utilise

HttpResponseMessage httpmsg = await QueryGraphAsync("/users?$select=displayName"); 

et la réponse ressemble à ceci:

{ "@ odata.context": "https://graph.microsoft.com/beta/ métadonnées $ # utilisateurs (displayName)", "valeur": [ {"displayName": "[email protected] Xxx"}]}

Il n'y a qu'un utilisateur à ce moment. Ce que je voudrais obtenir est "[email protected] Xxx" sans jouer avec la modification de chaîne qui résoudrait autour de trouver displayName, en sautant quelques caractères et en lisant jusqu'à ce qu'il trouve un guillemet.

Répondre

3

Microsoft Graph est une API REST qui renvoie JSON. Plutôt que de faire une "modification de chaîne", vous devez traiter la réponse comme un objet JSON, qui peut facilement être converti en un tableau ou un dictionnaire.

var obj = JSON.parse('{"@odata.context":"https://graph.microsoft.com/beta/$metadata#users(displayName)","value":[{"displayName":"[email protected] Xxx"}]}') 
 

 
var str = JSON.stringify(obj.value[0].displayName) 
 

 
document.write(str)

Voici comment vous devez traiter toutes les réponses que vous obtenez de Microsoft Graph. Faites-moi savoir si cela aide!