1

我有一个c#Web应用程序,它使用MS Graph连接到Azure AD B2C目录以显示用户数据。我正在寻找最佳实践方式来显示图表查询返回的内容。我总是可以直接进行字符串格式化,但我正在寻找更优化的东西。修改MS Graph响应以在网站上显示

我用

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

和响应看起来是这样的:

{ “@ odata.context”: “https://graph.microsoft.com/beta/ $#元数据用户(显示名)”, “价值”: {“displayName”:“[email protected] Xxx”}]}

这里只有一个用户。我希望得到的是“[email protected] Xxx”,而不用随意使用字符串修改来解决查找displayName,跳过几个字符并阅读直到找到引号。

回答

3

Microsoft Graph是一个返回JSON的REST API。而不是做“字符串修改”,您应该将响应视为JSON对象,该对象可以轻松转换为数组或字典。

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)

这是你应该怎样对待你从Microsoft图表得到响应。让我知道如果这有帮助!