MS Graph API: ищем ALIAS пользователя - PullRequest
0 голосов
/ 08 июня 2018

Я играл с MS Graph API.Хорошие вещи.

Одна вещь заставляет меня озадачиться, я не могу найти псевдонимы пользователя в свойствах пользователей.Поиск людей https://graph.microsoft.com/beta/me/people?$search="123456" дает мне точный правильный результат.Но ни одно из свойств не соответствует полю псевдонима (employeeID, userprincipalname и т. Д.).Я знаю, что он там есть, потому что полный клиент Outlook может его найтиoutlook screenshot

Ответы [ 2 ]

0 голосов
/ 09 июня 2018

спасибо за ваш ответ.Очень признателен.

Приятно знать, что mailNickname совпадает с псевдонимом.Я уже провел некоторое тестирование с использованием mailNickName в select.Я получаю этот ответ:

{
    "error": {
        "code": "BadRequest",
        "message": "Could not find a property named 'mailNickname' on type 'microsoft.graph.person'.",
        "innerError": {
            "request-id": "5c84fa9e-4989-40aa-b099-0e7bc4dc14cf",
            "date": "2018-06-09T11:56:27"
        }
    }
}

Я думаю, что это связано с разрешением ... потому что когда я делаю то же самое на "я", я действительно получаю свой собственный псевдоним.

Я свяжусьадминистраторы моего сайта, чтобы дать мне некоторые дополнительные привилегии ... вероятно, это ....

необходимы права администратора

0 голосов
/ 08 июня 2018

Псевдоним пользователя хранится в mailNickname.По умолчанию это свойство не возвращается как часть результата /user/{upn} или /me, поэтому вам необходимо специально запросить его, используя параметр запроса $select.Из документации :

Примечание. Получение пользователя возвращает только набор свойств по умолчанию (businessPhones, displayName, givenName, id, jobTitle, mail, mobilePhone, officeLocation, preferredLanguage, surname, userPrincipalName).Используйте $select, чтобы получить другие свойства и отношения для пользовательского объекта.

Например, вызов /me возвращает:

{
    "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#users/$entity",
    "id": "48d31887-5fad-4d73-a9f5-3c356e68a038",
    "businessPhones": [
        "+1 412 555 0109"
    ],
    "displayName": "Megan Bowen",
    "givenName": "Megan",
    "jobTitle": "Auditor",
    "mail": "MeganB@M365x214355.onmicrosoft.com",
    "mobilePhone": null,
    "officeLocation": "12/1110",
    "preferredLanguage": "en-US",
    "surname": "Bowen",
    "userPrincipalName": "MeganB@M365x214355.onmicrosoft.com"
}

Для возврата mailNicknameвам нужно указать, что вы хотите это свойство, используя $select.

Например, вызов /me?$select=mailNickname вернет:

{
    "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#users(mailNickname)/$entity",
    "mailNickname": "MeganB"
}

Вы заметите, что $select не добавьте к возвращаемым свойствам, оно определяет весь набор, который вы запрашиваете.Таким образом, чтобы включить набор по умолчанию, а также mailNickname, вам также необходимо добавить свойства по умолчанию.

Например, вызов /me/?$select=businessPhones,displayName,givenName,jobTitle,mail,mobilePhone,officeLocation,preferredLanguage,surname,userPrincipalName,id,mailNickname возвращает:

{
    "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#users(businessPhones,displayName,givenName,jobTitle,mail,mobilePhone,officeLocation,preferredLanguage,surname,userPrincipalName,id,mailNickname)/$entity",
    "id": "48d31887-5fad-4d73-a9f5-3c356e68a038",
    "businessPhones": [
        "+1 412 555 0109"
    ],
    "displayName": "Megan Bowen",
    "givenName": "Megan",
    "jobTitle": "Auditor",
    "mail": "MeganB@M365x214355.onmicrosoft.com",
    "mailNickname": "MeganB",
    "mobilePhone": null,
    "officeLocation": "12/1110",
    "preferredLanguage": "en-US",
    "surname": "Bowen",
    "userPrincipalName": "MeganB@M365x214355.onmicrosoft.com"
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...