我正在尝试从一个具有指定架构扩展的AAD租户中获取所有用户。 但是,在执行此请求时:
GraphServiceClient client = new GraphServiceClient(new AuthProv(_authHelper.GetAuthenticationResult()。Result));
var userList = new List<User>();
var users = await client.Users.Request().GetAsync();
userList.AddRange(users.CurrentPage);
while (users.NextPageRequest != null)
{
var nextPage = users.NextPageRequest.RequestUrl;
Debug.WriteLine("Call To: " + users.NextPageRequest.RequestUrl);
users = users.NextPageRequest.GetAsync().Result;
userList.AddRange(users);
}
我收到的JSON对象如下:
[{“businessPhones”:[],“displayName”:“some account name”,“userPrincipalName”:“somemail@email.com”,“id”:“123”,“givenName”:null,“jobTitle “:null,”mail“:null,”mobilePhone“:null,”officeLocation“:null,”preferredLanguage“:null,”surname“:null},...]
但是,我已经为用户定制了一个自己的属性,因此我可以从中检索值,但该属性不会随API响应一起发送。
如何更改请求以便将所有用户属性作为响应进行检索?
答案 0 :(得分:1)
使用这个新的baseUrl:&#34; https://graph.microsoft.com/beta/&#34;
GraphServiceClient client = new GraphServiceClient(&#34; https://graph.microsoft.com/beta/&#34;,new AuthProv(_authHelper.GetAuthenticationResult()。Result),null);
答案 1 :(得分:0)
您似乎正在使用开放式扩展程序。如果是,我们需要明确地扩展扩展程序。
以下是打印扩展名值的代码供您参考:
const regex = new RegExp("/\b?contact\b?", 'g');
const sites = {
links: [{
href: 'http://www.some-site.com/contact-us'
},
{
href: 'http://www.some-site.com/about'
},
{
href: 'http://www.some-site.com/admin'
}
]
}
const fitered = sites.links.filter((link) => {
return link.href.match(regex);
});
console.log(fitered);
如果有多个打开扩展程序页面,您还应通过 NextPageRequest 检索它。如果您还有问题,请随时告诉我。