Свойства null при использовании/пользователи, но не при использовании /me/contacts

Вопрос:

Когда вы получаете контакты из https://graph.microsoft.com/v1.0/me/contacts я получаю все свойства для пользователя, например:

{
displayName: 'Joe Joeson',
jobTitle: 'Administrator',
department: 'HK',
mobilePhone: '09823987234',
businessPhones: '8934598743',
mail: 'joe@mail.com',
}

Но когда я получаю всех пользователей организации (с https://graph.microsoft.com/v1.0/users?$select=displayName,jobTitle,department,mobilePhone,businessPhones,mail,userType), тот же контакт не получает некоторых свойства, например:

{
displayName: 'Joe Joeson',
jobTitle: null,
department: null,
mobilePhone: null,
businessPhones: null,
mail: 'joe@mail.com',
}

Зачем? Это тот же контакт? Или я чего-то не хватает? Должен ли я получить все контакты от организации по-другому?

Я подтвердил, что все свойства указаны в https://portal.azure.com

Лучший ответ:

Конечные точки /contacts и /users возвращают два разных объекта. Объект- contact представляет собой контакт Outlook из текущего пользователя Почтовый ящик Exchange, тогда как user объект представляет объект каталога пользователя из экземпляра Active Directory Active Directory.

Причина, по которой вы видите два разных результата, состоит в том, что вы возвращаете два разных объекта. Во — первых, Джо Joeson contact с вашей Outlook/Exchange, почтовый ящик и второй является Джо Joeson user из Active Directory.

Причина, по которой вы видите меньше информации от /users, связана с тем, что вы запрашиваете область Read all users' basic profiles » Read all users' basic profiles (ака User.ReadBasic.All). Эта область видимости может видеть только ограниченное количество свойств из user ресурса: displayName, givenName, surname, photo и mail.

Оцените статью
TechArks.Ru
Добавить комментарий